سلام
تا الان به اندازه کافی حرف زدیم و حالا دیگر وقت آن است که قدم به قدم مراحل ساخت چند برنامه را دنبال کنیم.
با توجه به اینکه قرار شد با استفاده از برنامه NSIS نرم افزار های پرتابل مورد نیاز خود را درست کنیم لذا لازم میدانم
اول دور نمای کلی کاری را که میخواهیم با هم انجام بدهیم را مشخص کنم.
اگر دوستان گرامی با سایت portableapp.com آشنا بوده و از برنامه های پرتابل ساخت این سایت استفاده کرده
باشند ، خواهند دید که ما در اینجا دقیقا" همان روش را استفاده میکنیم.
میخواهیم یک Pack بسازیم که با جرای فایل اصلی آن یک منو نمایان شود، و دراین منو نام چند نرم افزار باشد، و با
کلیک کردن ما روی هر نرم افزار ، آن نرم افزار اجرا شود .
بنده در مثال اول ساده ترین مورد ها را بحث خواهم کرد تا کاربر با کلیات کار آشنا شود و بعد در صورت لزوم در مورد
انواع سخت تر و پیچیده بحث خواهیم نمود.
پرتابل کردن برنامه Sumatra PDF Viewer 1.9
--------------------------------------------------
بعضی از برنامه ها مثل همین برنامه به راحتی و در چند لحظه به نوع پرتابل تبدیل میشوند.برای امتحان میتوانید این
برنامه را از لینک زیر دانلود و امتحان فرمایید:
Sumatra PDF Viewer - Download.com
برای پرتابل کردن این برنامه لازم نیست که آن را نصب کنید کافی است که روی این برنامه کلیک راست کرده و توسط
برنامه WinRAR یا zip7 یا Universal Extractor و یا امثال آن ها محتویات این فایل را جایی Extract کنید.
با فرض این که فایل ها را در پوشه فرضا" C:\SumatraPDF ریخته باشید اگر درون این پوشه روی فایل SumatraPDF.exe
دابل کلیک کنید برنامه اجرا خواهد شد بدون آن که نصبش کرده باشید.
حال اگر پوشه C:\SumatraPDF را به هر کامپیوتری منتقل کنید و روی فایل SumatraPDF.exe دابل کلیک کنید برنامه
بدون نیاز به نصب اجرا خواهد شد. بنابر این تا اینجا ما اولین فایل پرتابل خود را ساختیم.
این ساده ترین روش پرتابل کردن بوده ولی بندرت برنامه ای را پیدا خواهید کرد که اینگونه پرتابل شود.
فعلا" پوشه فایل SumatraPDF.exe را به همین صورت رها میکنیم و میرویم که نوع دیگری از پرتابل سازی را انجام
دهیم ولی در زمان Pack کردن با این پوشه و محتویاتش کار خواهیم داشت.
پرتابل کردن برنامه UltraISO PE 9.5.0.2800
-------------------------------------------------
این برنامه با برنامه بالا مقدار زیادی تفاوت دارد و نمیشود آن را مثل برنامه قبلی با نرم افزار هایی مثل Universal Extractor
و غیره Extract کرد. و از طرف دیگر این نرم افزار مجانی نبوده و برای اجرای کاملش ضرورت دارد که در آن شماره سریال وارد
کنیم تا اکتیو شود.لذا پرتابل کردنش هم مختصری سخت تر است.
ما باید یک بار این برنامه را نصب کرده و مراحل نصب برنامه را به روشی زیر نظر بگیریم و بدانیم با نصب این برنامه چه تغییراتی
در فایل های سیستم و همچنین چه تغییراتی در رجستری سیستم ایجاد میشود.
مسلم است که خودمان نمیتوانیم این عمل را انجام دهیم و برای اینکار باید از برنامه و یا برنامه هایی استفاده کنیم.
برنامه مورد علاقه بنده برای اینکار برنامه Totall install است که از نظر من یک برنامه بی نظیر و خیلی خوشدست برای
اینکار میباشد.این برنامه میتواند کلیه تغییراتی را که در فایل های سیستم و رجستری سیستم در حین نصب یک برنامه
ایجاد میشود را ثبت کند و آن را در در قالب فایل متنی برایمان لیست کند.
برای پرتابل کردن این نرم افزار ضرورت دارد که قبلا" برنامه Totall install در سیستم نصب شده باشد.البته باید بگویم که
بنده حداقل با 10 نرم افزار که میتوانند کاری مشابه این برنامه را انجام بدهند ، آشنا هستم که اگر لازم شد در زمان
خودش آن ها را معرفی و لینک دانلودشان را خواهم گذاشت.
آخرین نکته قبل از شروع مراحل پرتابل کردن UltraISO PE 9.5.0.2800 این است که بنده گرچه مطالب را کم کم و بترتیبی
توضیح میدهم که هر گونه کاربری بتواند بهره ببرد ولی در کل عقیده دارم که اینگونه کار ها بایستی توسط کاربران وارد
انجام شود و فکر میکنم که کاربرانیکه این مبحث را دنبال میکنند با طرز کار برنامه هاییکه توضیح میدهم آشنا هستند.
لذا بنده در طول آموزش مراحل کار با برنامه Totall install را توضیح نداده و فقط نتایج کار را خواهم گفت.
اما شروع کار (با فرض اینکه برنامهTotall install در سیستم نصب شده) :
------------------------------------------------------------------------------
1. برنامه UltraISO PE 9.5.0.2800 را دانلود کنید.
2.برنامه Totall install را اجرا و توسط آن UltraISO را نصب کرده و در انتهای کار گزارش تغییرات فایلی و گزارش تغییرات
رجستری را از برنامه میگیریم.
حالا مختصرا" نتیجه را بررسی میکنیم.میبینیم که
__ قسمت اول گزارش فایلی عبارت است از:
کد:
(+)(FOLDER) C:\Documents and Settings\All Users\Start Menu\Programs\UltraISO
(+)(FILE) UltraISO Help.lnk
(+)(FILE) UltraISO Online Order.url
(+)(FILE) UltraISO Readme.lnk
(+)(FILE) UltraISO Revision History.lnk
(+)(FILE) UltraISO Web Site.url
(+)(FILE) UltraISO.lnk
(+)(FILE) Uninstall UltraISO.lnk
(+)(FOLDER) C:\Documents and Settings\SpEeDeR Sp3\Desktop
(+)(FILE) UltraISO.lnk
میبینیم در این قسمت فقط فایل های short cut اضافه شده به منوی استارت و دسکتاپ را لیست کرده. چون ما
با فایل پرتابل نیازی به داشتن short cut ها نداریم.لذا این قسمت را حذف میکنیم
__ قسمت بعدی را که نگاه کنیم میبینیم یک سری فایل در پوشه C:\Program Files\UltraISO اضافه شده اند.
مشخص است که این فایل ها فایل های اصلی برنامه UltraISO هستند که این ها را لازم داریم و بعدا" با پوشه
UltraISO کار خواهیم داشت.
دیگه در گزارش فایلی ،فایل های دیگری گفته نشده اند.لذا فایل متنی گزارش تغییرات فایلی را می بندیم.
__ حال گزارش تغییرات رجستری را با notepad باز کرده و بررسی میکنیم.
__ قسمت اول عبارتند از :
کد:
[HKEY_CLASSES_ROOT\.bin]
@="binimage"
[HKEY_CLASSES_ROOT\.iso]
@="UltraISO"
[HKEY_CLASSES_ROOT\.isz]
@="UltraISO"
[HKEY_CLASSES_ROOT\.ui]
@="UltraISO"
[HKEY_CLASSES_ROOT\binimage]
@="BIN File"
این ها همه مربوط به پسوند هایی میشود که UltraISO مجاز است باز کند. این دستورات زمانی لازمند که ما بخواهیم
فایل هایی با پسوند های بالا را با دابل کلیک باز کنیم.ما نیازی به اینها نداریم چون در برنامه UltraISO پرتابل ما هیچوقت
با دابل کلیک فایلی را باز نمیکنیم بلکه اول برنامه پرتابل را اجرا و بعد انتخاب و دستور میدهیم که کدام فایل را باز کند.
لذا به این بخش از تغییرات رجستری نیازی نداریم و آن ها را پاک میکنیم.
__ قسمت های باقیمانده گزارش رجستری را که بررسی کنیم میبینیم
_ تعدادی از سطور آیکن های مربوط به برنامه هستند که در برنامه پرتابل نیاز به این آیکن ها نداریم لذا این قسمت ها
دا خط میزنیم.
_ سطوری مربوط به آدرس قرار گرفتن فایل های برنامه است (C:\Program Files\UltraISO) است که با توجه به اینکه
بعدا" برنامه پرتابل ما در آدرس مذکور نخواهند بود لذا آن ها را هم حذف میکنیم.
_ باقیمانده سطور هم درباره دستوراتی هستند که برنامه باید در زمان هایی که ما مستقیم با فایل ها کار میکنیم
باید اجرا شوند که چون ما هیچوقت مستقیما" با فایل های کامپیوتر کار نکرده بلکه اول برنامه پرتابل را اجرا و توسط
منو های آن فایلی را انتخاب و دستوری خواهیم داد لذا این قسمت ها را هم لازم نداشته و حذف میکنیم.
پس تا اینجا در این مثال ویژه نیازی به تغییرات رجستری سیستم نداریم.فراموش نکنید که همیشه اینطور نیست.
تا اینجا ما فهمیدیم که برای ساخت UltraISO پرتابل فقط به فایل های داخل پوشه (C:\Program Files\UltraISO)
نیاز داریم ولی هنوز یک مرحله دیگر از کارمان با این برنامه مانده است.
اگر در این زمان بخواهیم این برنامه را اجرا کنیم، برنامه پیغامی نشان داده و سریال خواهد خواست و همانطور که در
بحث های قبلی توضیح دادم پس از اینکه ما سریال را وارد کردیم ،برنامه آن را جایی ذخیره خوهد کرد.
بنابراین ما ایندفعه تغییرات حاصل در سیستم را بعد از دادن سریال ، باید توسط برنامهTotall install زیر نظر بگیریم
بعد از اینکار باید دوباره تغییرات فایلی و تغییرات رجستری در سیستم را مطالعه کنیم تا شاید بتوانیم بفهمیم برنامه
سریال را کجا و چگونه ذخیره میکند.
توجه داشته باشید که نه تنها در این برنامه بلکه هر برنامه دیگر که ما با سریال آن را اکتیو میکنیم، بعد از آن هر وقت
ما بخواهیم آن برنامه را اجرا بکنیم ، برنامه اول به جاییکه سریال قرار دارد رفته و اگر سریال را ببیند درست و کامل کار
خواهد کرد.
لذا ما باید در این مثال جای نگهداری سریال را پیدا کرده و در نوع پرتابلی که میسازیم ، کاری کنیم که قبل از اجرای
برنامه ، سریال در محل مورد نظر قرار داشته باشد، تا برنامه کامل کار کند.
اینکار را میکنیم و در آخر گزارش کار را از برنامه برنامهTotall install گرفته و مطالعه میکنیم. که خلاصه کار برای این
مثال بشرح زیر است:
توضیح اینکه برای این برنامه بنده نام mcs و کد E3-C082-6137-AB7B50 را وارد کردم و برنامه اکتیو شد.
برنامهTotall install در گزارش میگوید که در حین دادن سریال هیچ تغییر فایلی در سیستم صورت نگرفته است.
پس حداقل تا اینجا مفهمیم که برنامه بعد از گرفتن سریال آن را بصورت فایل مخفی یا غیر مخفی نگهداری نمیکند
بنابر این آنرا در جایی از رجستری باید ذخیره کرده باشد.
به گزارش رجستری برنامهTotall install نگاه میکنیم ، اول دنبال عین سریال وارد شده در رجستری میگردیم ولی
پیدایش نمیکنیم.
ولی بیشتر که دقت بکنیم سطور زیر را مشاهده میکنیم:
کد:
[HKEY_CURRENT_USER\Software\EasyBoot Systems\UltraISO\5.0]
"Registration"="cba489b6d293ced0d6abefacdef1dfae"
"UserName"="mcs"
معلوم میشود که برنامه سریال را کد بندی کرده یعنی سریال E3-C082-6137-AB7B50 کد بندی کرده و بصورت
cba489b6d293ced0d6abefacdef1dfae در رجستری نگهمیدارد.
هنوز تمام نشده، اینها هنوز فقط چیزی است که ما فکر میکنیم. لذا باید امتحان کنیم و مطمئن شویم. برای این
کار به صورت زیر عمل می نماییم:
به رجستری سیستم وارد شده و سطور بالا را از رجستری سیستم حذف میکنیم. اگر حدس ما درست باشد
برنامه در حین اجرا چون کد را سرجایش نمی بیند باید دوباره سریال بخواهد.
حال برنامه را اجرا میکنیم . بله درست حدس زدیم برنامه که دفعه قبل اکتیو شده بود و درست عمل میکرد، الان
باز هم سریال میخواهد.
پس تا اینجا فهمیدیم که برای پرتابل کردن UltraISO یکی به فایل های داخل پوشه (C:\Program Files\UltraISO)
نیاز داریم و یکی هم به یک دستور رجستری که باید استفاده کنیم
یعنی ما اگر پوشه UltraISO را به کامپیوتر دیگری منتقل کنیم و در آن کامپیوتر یکبار فایل رجستری را اجرا کنیم،
بعد از آن برنامه بصورت کامل بدون نصب کار خواهد کرد.
فعلا" این مثال را هم موقتا" بحال خود گذاشته و سراغ پرتابل کردن آخرین برنامه این بخش می رویم.
تا روزی دیگر و فرصتی دیگر
علاقه مندی ها (بوک مارک ها)