PDA

View Full Version : سوال: ذخيره اطلاعات در رجيستري در يك پروژه نصب(Setup)



Jenab4372
سه شنبه 07 مهر 1388, 17:08 عصر
سلام
مي خواستم بدونم آيا در پروژه هاي نصب(Setup) ويژوال استديو قسمتي وجود داره كه بشه مسيري كه كاربر انتخاب ميكنه براي نصب پروژه را در قسمتي از رجيستري نوشت.
و اصلا من مي خوام يك ديالوگ اختصاصي طراحي كنم كه وسط ديالوگهاي نصب برنامه اضافه بشه و با گرفتن يك سري اطلاعات از كار بر آنها را در رجيستري بنويسد آيا مي شود چنين كاري كرد.:متفکر:
لطفا راهنمايي كنيد
با تشكر از زحمات شما

Nima_NF
سه شنبه 07 مهر 1388, 19:57 عصر
با سازنده setup خود viusal studio سخت هست، باید برنامه نویسی با MSI بگیرید،
اگر سراغ سایر installer ها مثل installshield بروید راحت تر کارتان انجام می شود و منبع بیشتری هم در اختیارتان هست. (در کل باز هم باید اسکریپت نویسی کنید)

A_Salimi
سه شنبه 07 مهر 1388, 22:14 عصر
یکی از بهترین برنامه ها برای ساخت برنامه های نصب Advanced installer است.که به راحتی می توانید خیلی از کارها (مثل ساختن کلید های رجیستری ) را انجام دهید.کد نویسی آن هم بسیار ساده و شبیه توابع c است که توسط راهنمای برنامه می توانید به راحتی از آنها استهاده کنید.

Jenab4372
چهارشنبه 08 مهر 1388, 12:12 عصر
با سازنده setup خود viusal studio سخت هست، باید برنامه نویسی با MSI بگیرید،
اگر سراغ سایر installer ها مثل installshield بروید راحت تر کارتان انجام می شود و منبع بیشتری هم در اختیارتان هست. (در کل باز هم باید اسکریپت نویسی کنید)

مگه installshield كتابخانه هاي MFC و C-Run Time مورد نياز پروژه رو ميتونه شخيص بده و در سيستم هدف كپي(نصب) كنه؟:متفکر:

اصلا من مي خوام يك پروژه MFC اختصاصي بسازيم كه برنامم رو خودش نصب كنه حالا فقط مشكلم اينه كه نميدونم پروژه من به كدام كتابخانه ها نياز دارم كه بايد در پوشه سيستم ويندوز كپي كنم.(منضورم كتابخانه هاي MFC و C Run Time مورد نياز پروژه هست)

اگه ليست فايلها رو داشته باشم كه مشكل حله. نه؟

Nima_NF
چهارشنبه 08 مهر 1388, 16:01 عصر
برنامه های setup ساز از جمله Installshield بخشی دارند تحت عنوان dependencies که وقتی فایل اجرایی را به پروژه اضافه می کنید خودش بررسی می کند و می گوید که چه dll هایی نیاز دارد، (معمولا بسته های مورد نیاز در خودش هست، اگر هم نبودند از سایت دانلود کرده و به آن اضافه کنید).
به این شکل دیگر نیاز نیست که شما دستی آن ها را کپی کنید، بلکه آن ها تحت عنوان dependency در پروژه قرار می گیرند و هنگام نصب اگر در سیستم نباشند خودکار نصب می شوند.
اصلا اصلی ترین کار installer ها همین موضوع هست.

در پروژه setup خود Visual studio هم همین طور هست و dependency دارد، اما به قدرتمندی installshield نیست. (دقت کنید که Installshield یک نرم افزار گران قیمت هست)
در قسمت solution explorer راست کلیک کنید و dependency .

پس در یک کلام، شما چیزی در ویندوز کپی نمی کنید، بلکه از setup استفاده می کنید تا خودش تشخیص دهد و در پروژه بریزد و در صورت نیاز آن ها را در سیستم هدف نصب کند.