PDA

View Full Version : حرفه ای: ستاپ و ستاپ ساز با وی بی



سید حمید حق پرست
شنبه 03 تیر 1391, 00:04 صبح
سلام علیکم
پس از سه روز تلاش و کد نویسی تونستم با وی بی فایل ستاپ بسازم . ستاپی که با برنامه های ستاپ دیگه هیچ فرقی نداره

امکانات :
1- نصب برنامه در پوشه مورد نظر
2- شرتکت انداختن در دسکتاپ
3- شرتکت و کپی برنامه در ستارت ویندوز
4- اضافه کردن برنامه به add remove ویندوز
5- رجستری کردن ocx و dll
6- داشتن uninstall
و ...

الان در حال ساخت ستاپ سازش هستم و ستاپ سازش همه چیش تمام شده بجز اینکه چه طوری فایلهارو در ریسورس برنامه ستاپ که در ریسورس ستاپ ساز هست قرار بدهم:گریه:
و اینکه چطوری برنامه uninstall خودش را حذف کند

دوستان اگه میتونید راهنمایی کنید
میخوام قدرت وی بی رو نمایش بدییییییم:قلب:

اینم فایل ستاپ که تقریبا کامله و همچنان دارم روش کار میکنم

دوستان نظر بدید و کمک کنید
در مورد زبان برنامه و فرم و راهنمایی در مورد این مشکل قرار دادن در ریسورس

just4froum
شنبه 03 تیر 1391, 01:47 صبح
الان در حال ساخت ستاپ سازش هستم و ستاپ سازش همه چیش تمام شده بجز اینکه چه طوری فایلهارو در ریسورس برنامه ستاپ که در ریسورس ستاپ ساز هست قرار بدهم:گریه:
و اینکه چطوری برنامه uninstall خودش را حذف کند



خوب شما بیا همه ی فایل هایی رو که می خوای نصب کنید از نظر بایتی به هم بچسبانید با یک علامت که خودتان می سازید مثلا 251 - 253- 210 یعنی مثلا فایل اول یعد علامت شما بعد فایل دوم بعد علامت شما بعد فایل سوم و ...

برنامه نصب میاد از طریق بایتی برنامه رو باز می کنه و هر جا به اون علامت رسید فایلو می بنده و یک فایل جدید باز می کنه.
اسم فایل هم یا باید به صورت باینری توی همون فایل بریزی یا توی یه تکست دیگه ذخیره کنی.

هر فایلی رو هم که نصب کردی در جایی ذخیره می کنی تا برنامه بتونه از همون فایل تک تک فایل های نصب شده را بخواند و حذف کند.

سید حمید حق پرست
شنبه 03 تیر 1391, 02:00 صبح
خوب شما بیا همه ی فایل هایی رو که می خوای نصب کنید از نظر بایتی به هم بچسبانید با یک علامت که خودتان می سازید مثلا 251 - 253- 210 یعنی مثلا فایل اول یعد علامت شما بعد فایل دوم بعد علامت شما بعد فایل سوم و ...

برنامه نصب میاد از طریق بایتی برنامه رو باز می کنه و هر جا به اون علامت رسید فایلو می بنده و یک فایل جدید باز می کنه.
اسم فایل هم یا باید به صورت باینری توی همون فایل بریزی یا توی یه تکست دیگه ذخیره کنی.

هر فایلی رو هم که نصب کردی در جایی ذخیره می کنی تا برنامه بتونه از همون فایل تک تک فایل های نصب شده را بخواند و حذف کند. ممنون از توجه شما

دوست عزیز در مورد حذف همه چی تکمیله و مثل ستاپهای دیگه هست و در مورد فایلها هم همینطور
الان این ستاپ تکمیله و کار میکنه . مشکل من اینجاست الان میخوام ستاپ ساز مثل انستال شید و ... بسازم . فایل SETUP که تکمیله . فایل UNINSTAL هم تکمیله

دو تا مشکل هست

اولی اینکه در مورد UNUNSTALL : فایل UNINSTALL بعد از نصب در پوشه ویندوز نصب میشه و هنگام حذف برنامه رو از ADD REMOVE ویندوز و ستارت و محل نسب و رجستری کامل حذف میکند و این وسط خودش فقط میمونه و حذف نمیشه
دومی در مورد ستاپ سازه : من برنامه ستاپ رو در ریسورس ستاپ ساز قرار میدم حالا وقتی کاربری از ستاپ ساز استفاده کنه باید فایلهاش و فولدرهاشو در ریسورس ستاپ که ستاپ هم در ریسورس ستاپ ساز هست وارد کنه . ولی چطوری نمیدونم

ممنون میشم راهنمایی کنید

یا علی (ع)

محسن واژدی
شنبه 03 تیر 1391, 10:52 صبح
اولی اینکه در مورد UNUNSTALL : فایل UNINSTALL بعد از نصب در پوشه ویندوز نصب میشه و هنگام حذف برنامه رو از ADD REMOVE ویندوز و ستارت و محل نسب و رجستری کامل حذف میکند و این وسط خودش فقط میمونه و حذف نمیشه سلام علیکم
میشه گفت uninstallerها از یکی از این سه روش استفاده میکنند، اول اینکه برنامه را حذف و فایل خودشان باقی میمونه (موضوعی که اشاره کردین) روش دوم یک نسخه از فایل uninstaller را در در جایی (اکثرا temp) کپی و اجرا میکنند، در واقع uninstaller موجود در فولدر برنامه یا هر جای دیگر به همراه سایر فایل ها حذف میشود اما باز هم فایل uninstaller نهایی که در فولدر temp باشد باقی میماند (مثلا ستاپ ساز Nullsoft installer,nsis) روش سومی که میتونه مناسب هم باشه استفاده از یک واسط که خودش هم حذف میشود مثلا یک فایل bat را در نظر بگیریم (چرا که فایل نهایی باقیمانده cmd است که اون هم ...)، بیشترین پیشنهاد بنده هم در همین روش است، به عنوان مثال اگر کد زیر را در برنامه نمونه قرار داده و تست کنیم هر دو فایل تعریف شده یعنی uninstaller+tmp.bat در پایان حذف میشوند:

Private Sub Command1_Click()
Dim sTmpBATFle$


sTmpBATFle$ = Environ("temp") & "\tmp.bat"
sTmpBATFle$ = Replace(sTmpBATFle$, "\\", "\")


Open sTmpBATFle$ For Output As #1
Print #1, "del """ & App.Path & App.EXEName & ".exe"""
Print #1, "del """ & sTmpBATFle$ & """"
Close #1


Shell "cmd /c """ & sTmpBATFle$ & """", vbHide
End


End Sub


دومی در مورد ستاپ سازه : من برنامه ستاپ رو در ریسورس ستاپ ساز قرار میدم حالا وقتی کاربری از ستاپ ساز استفاده کنه باید فایلهاش و فولدرهاشو در ریسورس ستاپ که ستاپ هم در ریسورس ستاپ ساز هست وارد کنه . ولی چطوری نمیدونم حتما مستحضرین که ستاپ سازها در زمان آماده سازی فایل ها، آنها را به برنامه وارد نمیکند و صرفا مسیری از فایل ها را لیست میکند، که در اینصورت تنها در زمان بسته بندی است که ستاپ موجود در ریسورس استخراج و فایل های مشخص شده به آن اضافه میشود، پس لازم نیست در زمان طراحی فایل ها را به برنامه اضافه کنیم

موفق باشید

سید حمید حق پرست
شنبه 03 تیر 1391, 19:49 عصر
سلام علیکم
ممنون از راهنماییهاتون اقای واژدی


حتما مستحضرین که ستاپ سازها در زمان آماده سازی فایل ها، آنها را به برنامه وارد نمیکند و صرفا مسیری از فایل ها را لیست میکند، که در اینصورت تنها در زمان بسته بندی است که ستاپ موجود در ریسورس استخراج و فایل های مشخص شده به آن اضافه میشود، پس لازم نیست در زمان طراحی فایل ها را به برنامه اضافه کنی

الان این روش خیلی خوبیه . ما میتونیم در ستاپ ساز مسیر فایلهارو لیست کنیم بعد هنگام زدن دکمه ساخت ستاپ مسیر فایلهای لیست شده رو به فایل ستاپ بدهیم و فایل ستاپ اونهارو در ریسورس خودش قرار دهد .
حالا مشکل من اینجاست : برنامه ستاپ با چه کدی فایلهای لیست شده رو در ریسورس قرار بدهد . یه جور دیگه میگم . فرض میکنیم که یک برنامه داریم و در برنامه یک تکست باکس و یک دکمه حالا برنامه بعد از کمپایل شدن میخوام مسیر فایلی را در تکست باکس قرار بدهیم و بعد از زدن دکمه اون فایل به ریسورس برنامه بره و ذخیره بشه . بقیه کارهاش مث لیست کردن و انتقال مسیر فایلها به ستاپ و ... راحته و بلد هستم
اگر در این مورد هم راهنمایی کنید ممنون میشم

یا علی (ع)

just4froum
شنبه 03 تیر 1391, 20:30 عصر
حالا چرا ریسورس ؟

خوب همونطوری که می دونید اگر به آخر یک فایل هر تعداد بایت اضافه کنیم اون بایت خراب نمیشه شما هم بیا اون برنامه هایی که می خوای بچسبون ته فایل نصب و فایل نصب هم خودش جداشون کنه و بریزه جایی که می خواد.

سید حمید حق پرست
شنبه 03 تیر 1391, 20:41 عصر
حالا چرا ریسورس ؟

خوب همونطوری که می دونید اگر به آخر یک فایل هر تعداد بایت اضافه کنیم اون بایت خراب نمیشه شما هم بیا اون برنامه هایی که می خوای بچسبون ته فایل نصب و فایل نصب هم خودش جداشون کنه و بریزه جایی که می خواد.

ممنون از توجه شما
چون همه کارهاشرو انجام دادم و فقط این مونده . ریسورس هم زیاد باهاش کار کردم و همه کدهاشرو زود متوجه میشم
به نظر شما کدومشون خوبه
اگر هم ممکنه در مورد ریسورس کمک کنید ممنون میشم (تکه کدی راهنمایی یا ...)

یا علی (ع)

سید حمید حق پرست
دوشنبه 05 تیر 1391, 18:03 عصر
سلام علیکم

کسی از دوستان راهنمایی نمیکنه!!


یا علی (ع)

بهروز عباسی
دوشنبه 05 تیر 1391, 21:22 عصر
درود به همه
شرمنده الان وقت نداشتم مطلب و کامل دنبال کنم اما فکر کنم برنامه زیر کمکتون کنه برای قرار دادن فایل درون ریسورس البته این برنامه ایستا هستش(از نظر تعداد فایل) و با کمی کار میشه بصورت پویا هم پیاده سازیش کرد.

کار برنامه:
تعدادی فایل را به عنوان ورودی گرفته درون رسورس ذخیره کرده و در محل تعیین شده توسط کاربر استخراج می کند.
88734

موفق باشید.

سید حمید حق پرست
سه شنبه 06 تیر 1391, 00:17 صبح
سلام علیکم

کد عالیه خیلی خیلی ممنون
بعد از تموم شدن ستاپ ساز اگر تونستم سورسشو میزارم
خیلی کار داره و منم وقت ندارم
خدا کنه وقتم ازاد بشه تا تمومش کنم و قدرت وی بی رو نمایش بدم

موفق بشید

یا علی (ع)