سلسلة شروحات innoSetup الدرس الخامس : صناعة ملف التثبيت عن طريق الأكواد الجزء الثاني قسم setup

ناصر بعزيز

Administrator
طاقم الإدارة
إنضم
7 أغسطس 2018
المشاركات
646
مستوى التفاعل
666
النقاط
93
الإقامة
الجزائر
الموقع الالكتروني
mx-blind.com
الجنس
ذكر
نظام التشغيل
Windows10
قارئ الشاشة المستخدم
jaws
بسم الله الرحمان الرحيم, والصلاة والسلام على أشرف الخلق والمرسلين
أما بعد فأيها الأحباب أهلا وسهلا بكم في هذا الدرس الخامس من دورة تعلم برنامج InnoSetup
لقد كنا في الدرس السابق قد دخلنا في كتابة الأكواد في برنامج InnoSetup
وتحدثنا عن الأكواد التي يكتبها المعالج تلقائيا عند إنشاء السكربت.
كما بدأنا في استعراض أكواد القسم
[setup]
حيث تحدثنا عن الأكواد التي يكتبها المعالج تلقائيا فيه
وفصلنا خياراتها كما شرحنا فائدتها.
لمن لم يقرأ الدرس السابق بإمكانه العودة إليه من الرابط التالي
أما اليوم فسنواصل في نفس القسم ومع أكواد جديدة في قسم [setup]
وقبل أن أبدأ أحب أن أعتذر منكم إخواني على التأخير في تقديم الدرس, ولاكن هذا كان بسبب مفاجأة سأقدمها لكم قريبا وأتمنا أن تنال إعجابكم.
هيا بنا الآن ندخل في موضوعنا
أحب أن أخبركم بأني سأحاول أن يكن هذا الدرس هو آخر درس في هذا القسم
لأني يجب أن أعجل قريبا في الدورة حتى نتابع قليلا في دورة autoit, ولأسباب أخرى سأخبركم عنها في وقتها.
على بركة الله نبدأ
1. الأكواد الخاصة بمعلومات إصدار البرنامج
في هذا القسم من الدرس سنتعرف على الأكواد التي تضيف لنا معلومات فنية لبرنامجنا
كنا في الدرس السابق والذي يمكنكم العودة إليه في أي وقت من خلال الرابط أعلاه قد تحدثنا عن بعض الأكواد الخاصة بالمعلومات الفنية وهي :
  • AppName
  • AppVersion
  • ;AppVerName
  • AppPublisher
  • AppPublisherURL
  • AppSupportURL
  • AppUpdatesURL
اليوم سنكمل بعض الأكواد الأخرى
ويستحسن وضعها إلى جانب الأكواد السابقة
هي نبدأ على بركة الله

AppCopyright=copyright ©2019, mx-blind; .
AppCopyright تستخدم لوضع حقوق الإنشاء
ملاحظة : يتم عرض هذه الخانة أسفل نوافذ المعالج
كما ستضاف إلى خانة معلومات الملف في حال لم يتم تخصيصها في الأكواد التي سنتعرف عليها الآن
AppMutex=MyProgramsMutexName
AppMutex يستخدم لمنع معالج التثبيت من أو مزيل التثبيت من العمل في حال كان التطبيق يعمل
ولعمل هذا يجب إنشاء معرف mutex في برنامجك
بإمكانك البحث عن mutex في الأنترنت وستجد طريقة إنشائه بجميع لغات البرمجة.
AppReadmeFile=c:\readme.txt
AppReadmeFile يستخدم للإعلان عن ملف إقرأني في البرنامج
VersionInfoCompany=mx-blind
VersionInfoCompany تستخدم لكتابة إسم الشركة في معلومات الملف الناتج
ملاحظة في حال استخدام
AppPublisher
بإمكانك الإستغناء عن هذا لأنه يعوضه

VersionInfoCopyright=copyright ©2019, mx-blind; .
VersionInfoCopyright تستخدم لوضع حقوق الإنشاء في معلومات الملف
في حال لم تقم بإستخدامها فستستبدل بكود
AppCopyright
إذا تم تخصيصه.
VersionInfoDescription=easy Audio Player
يستخدم هذا لوضع وصف أو بالأحرى إسم البرنامج في معلومات الملف الناتج
في حال تجاهل هذا الخيار فسيتم استخدام
AppName
في حال وجدت
VersionInfoOriginalFileName=EasyAudioPlayer_Setup.exe
VersionInfoOriginalFileName لكتابة إسم الملف الأصلي في معلومات الملف.
VersionInfoProductName=easy Audio Player
VersionInfoProductName تستخدم لكتابة إسم المنتج في معلومات الملف الناتج
VersionInfoProductTextVersion=v1.0
VersionInfoProductTextVersion لتعيين قيمة إصدار المنتج النصي في معلومات إصدار الملف الناتج.
VersionInfoProductVersion=1.0.0.0
VersionInfoProductVersion لتعيين قيمة إصدار المنتج الثنائي لمعلومات إصدار الملف الناتج.
VersionInfoTextVersion=v1.0
VersionInfoTextVersion لتعيين قيمة الإصدار النصي لمعلومات إصدار الملف الناتج.
VersionInfoVersion=1.0.0.0
VersionInfoVersion لتعيين قيمة إصدار الملف الثنائي لمعلومات إصدار الملف الناتج.

هذا كل ما له علاقة بالعنصر الأول من درسنا لننتقل الآن إلى العنصر الثاني

2. الأكواد الخاصة بإظهار النوافذ أو إخفائها
DisableDirPage=no
هذه لإخفاء أو إظهار نافذة إختيار مكان التثبيت
تحتمل قيمتين yes لإخفائها أو no لإظهارها
DisableFinishedPage=no
هذه لإظهار أو إخفاء نافذة تم الإنتهاء من تثبيت البرنامج, والتي من خلالها يمكننا تشغيل البرنامج بعد التثبيت
طبعا تحتمل قيمتين yes لإخفائها أو no لإظهارها
DisableProgramGroupPage=no
لإخفاء نافذة إختيار اسم مجلد البرنامج في قائمة إبدأ
وهي كذالك تحتمل قيمتين طبعا yes لا داعي أن نقول لإخفاء النافذة وكذالك لا داعي أن أقول كذالك أن no لإظهارها بعد الآن.
DisableReadyMemo=no
لإخفاء مربع المعلومات الخاصة بمعلومات تثبيت البرنامج في آخر نافذة قبل بدأ التثبيت
DisableReadyPage=no
لإخفاء نافذة البرنامج جاهز للتثبيت

DisableStartupPrompt=yes
لتعطيل نافذة التنبيه قبل بدأ التثبيت, (هل تريد تثبيت برنامج كذا على جهازك)
DisableWelcomePage=yes
لتعطيل نافذة الترحيب عند تثبيت البرنامج

وها هذا القسم كذالك انتها
طبعا الآن ننتقل إلى عنصر جديد في الدرس
وهو
3. منوعات
هنا سأضع لكم بعض الأكواد المتنوعة التي ستفيدنا
وطبعا ليس كل الأكواد
سأضع الأهم منها وعليك الذهاب إلى ملف المساعدة للحصول على معلومات أكثر. وأكواد أخرى كثيرة.

AllowCancelDuringInstall=yes
هذا عزيزي هل تريد السماح للمستخدم أن يلغي عملية التثبيت بعد أن تبدأ أو لا
طبعا لك الخيار في ذالك
تلقائيا يكن مسموح
وفي حال غيرت yes إلى no فستكن قد عطلت الخيار وبالتالي لا يمكنه إيقاف التثبيت بعد بدايته.
AlwaysRestart=no
في حال جعلتها yes فإن المعالج سيقوم بالمطالبة بإعادة تشغيل الجهاز بعد إنتهاء عملية التثبيت.
ArchitecturesAllowed
هذا لتحديد نمط الويندوز الذي يعمل عليه البرنامج
يمكنك وضع خيار واحد أو أكثر من خيار بالفصل بين الخيارات بالمسافة
x86
x64
arm64
ia64
في حال تركها فارغة أو عدم إستخدامها أصلا فهذا يعني أنه يعمل على جميع الأنظمة
ArchitecturesAllowed=x64
ArchitecturesInstallIn64BitMode
هذه في حال كان برنامجك يدعم العمل على نظام 64 bit فقط
وها هي الخيارات المتاحة يمكنكم كتابة خيار واحد أو أكثر بالفصل بينهم بالمسافات
x64
arm64
ia64
ArchitecturesInstallIn64BitMode=x64
ملاحظة لا تقم بوضع هذا الخيار إلا في حال كان برنامجك مهيء للعمل على بئة 64 bit فقط
CloseApplications=yes
هذه لغلق التطبيقات التي تحتاج تعديل ملفاتها إلى تحديث أو تغيير من خلال معالج التثبيت والقيم المتاحة هي
force, yes, أو no
ملاحظة في حال اخترت
force أو yes
فإن المعالج سيقوم بمطالبتك بالسماح له أن يقم بغلقق التطبيقات المشتركة وإعادة تشغيلها بعد التثبيت.
في حال كان التثبيت صامت فإنه سيقوم بغلقها تلقائيا إلا في حال عطلت الخيار من خلال الأوامر السطرية
CreateUninstallRegKey=yes
هذا لإنشاء مفتاح إزالة التثبيت في سجل النظام
حيث يمكنكم إزالة البرنامج من خلال إزالة البرامج في النظام
يمكن تحمل قيمة yes للإنشاء أو no لعدم الإنشاء
DefaultUserInfoName={sysuserinfoname}
لاختيار اسم المستخدم الذي سيظهر تلقائيا في شاشة معلومات المستخدم. يمكن أن يتضمن هذا الثوابت
DefaultUserInfoOrg={sysuserinfoorg}
تعيين المؤسسة الافتراضية المعروضة في صفحة معالج معلومات المستخدم. يمكن أن يتضمن هذا الثوابت
DefaultUserInfoSerial=xxx
تعيين الرقم التسلسلي الافتراضي المعروض في صفحة معالج "معلومات المستخدم". يمكن أن يتضمن هذا الثوابت
UserInfoPage=no
لإظهار صفحة معلومات المستخدم.
هذه تفيد جدا خاصة إذا كان البرنامج يحتوي على serial في التثبيت

DirExistsWarning=auto
هذا الخيار في حال تعيينه على auto واخترت مجلد تثبيت موجود بالفعل فإن المعالج سيقوم بسؤالك هل تريد التثبيت في المجلد على أي حال, في حال كان الم يكن نفس البرنامج مثبت على المجلد
أما في حال اختيار yes فإنه سيسألك كلما اخترت مجلد للتثبيت موجود بالفعل
أما في حال إخترت no فسيقم بالتثبيت دون سؤالك.
EnableDirDoesntExistWarning=no
في حال اخترت yes فإنه سيظهر للمستخدم رسالة إذا كان مجلد التثبيت غير موجود يسأله فيها هل تريد إنشائه.
OutputBaseFilename=mysetup
هذا لإختيار اسم الملف الناتج
OutputDir=Output
اختيار اسم المجلد الذي يكون فيه الملف الناتج ومساره إن شئت أن يكن المسار مختلف عن موقع السكربت
Password=***
هذا يستخدم في حال كان البرنامج سري ويحتاج المستخدم لتثبيته إدخال كلمة سر
فهنا تضع كلمة السر الخاصة بك
RestartApplications=yes
عند التعيين على "yes" وتعيين "CloseApplications" على "yes" ، يقوم "برنامج الإعداد" بإعادة تشغيل التطبيقات المغلقة بعد اكتمال التثبيت.
RestartIfNeededByRun=yes
عند اختيار yes وكان البرنامج الذي يقوم المعالج بتشغيله بعد التثبيت يتطلب استبدال ملفات
فإن المعالج يتعرف على ذالك ويطالبك بإعادة تشغيل البرنامج لاكتمال المهمة
SetupIconFile=MyProgSetup.ico
لاختيار الأيقونة التي تظهر في الملف الناتج وكذا ملف إزالة التثبيت
طبعا بإمكانك استخدام اسم الملف فقط في حال كانت الأيقونة في نفس مجلد السكربت أو تحتاج لكتابة المسار الكامل للأيقونة.
SetupMutex=mutexName
هذا لكي يتعرف المعالج على إذا كانت نسخة أخرى من المعالج قيد التشغيل
فيظهر لك رسالة تخبرك بأن المعالج يعمل بالفعل يرجى إغلاق النسخ السابقة لفتح نسخة جديدة
وطبعا يعمل بخاصية mutex
بإمكانك القراءة أكثر في ملف المساعدة للحصول على معلومات أكثر
ShowLanguageDialog=yes
هذا لإظهار نافذة إختيار لغة التثبيت
في حال إخترت auto فإنه يظهر النافذة فقط في حال لم تكن مثبت البرنامج سابقا, وإذا إخترت no فلن يظهر نافذة اللغات أبدا, بإمكانك إذن اختيار اللغة عن طريق الأوامر السطرية
Uninstallable=yes
هذه لإنشاء ملفات لإزالة التثبيت في مجلد البرنامج
في حال إخترت no فهذا يعني أن البرنامج لا يحتاج إلى إزالة تثبيت فبالتالي لن يقم بإنشاء الملفات الخاصة بالإزالة ولا حتى مفتاح الإزالة.
-UninstallDisplayIcon=icon.ico
يتيح لك هذا الخيار إظهار أيقونة مختلفة عن أيقونة البرنامج في إضافة / إزالة البرامج
UninstallDisplayName
يتيح لك ذلك تحديد اسم مخصص لإدخال البرنامج في "إضافة / إزالة البرامج". قد تشمل القيمة الثوابت. إذا لم يتم تحديد هذا التوجيه أو كان فارغًا ، فسيستخدم برنامج الإعداد قيمة AppVerName للاسم.
UninstallDisplayName=My Program
UninstallFilesDir={app}
يفيد هذا في حال أردت تغيير مكان ملفات إزالة التثبيت
تلقائيا تكن في نفس مجلد البرنامج الإفتراضي
UninstallRestartComputer=no
هذا في حال إخترت yes فإنه سيطالب المستخدم بإعادة تشغيل الجهاز بعد إزالة التثبيت

ها قد وصلنا يا أحبابي إلى إنتهاء هذا الدرس
وبالتالي إنتهاء قسم setup
نلتقي في الدرس القادم لنتعرف على قسم جديد
كما أخبرتكم أعزائي لم أعطيكم كل الأكواد
لاكن تأكدو أني أعطيتكم أهمها
وبإمكانكم العودة لملف المساعدة وهناك تجدون كل الأكواد
وأنا شخصيا أشرح من خلاله.
تقبلو تحياتي ولا تنسوني من خالص دعائكم
وكان الله في عوننا جميعا
وبارك الله فيكم وشكرا على المتابعة.
كان معكم أخوكم في الله @ناصر بعزيزinnosetup,inno,setup,install,make,instalables,setups,setup.exe,mx-blind,دورة,تعلم,إينوستب,إينو,ستب,معالج,تثبيت,تصميم واجهات التثبيت,واجهة
 
مبدع ومتميز دائما أخي العزيز ناصر
شرح رائع إستفدتُ منه كثيرا
بارك الله فيك وجزاك الله كل خير
وشكرا جزيلا لك على هذه السلسلة الرائعة جدا من الشرحات المفيدة جدا جدا
تقبل تحياتي.
 
رائع جدا أخي ناصر دروس في غاية الروعة
جزيت خيرا على تقديمها
 
عودة
أعلى