الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

دورة تحزيم البرامج Setup & Deployment Applications By Vs 2008

بدأه Max bayne في 13 مارس 2009 · 10 رد · 3,560 مشاهدة · في قسم الدروس والمواضيع المتميزة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

اهلا بكم اخواني الاعزاء في مواصلة دروس دورتنا الخاصة بالتحزيم ولمن لم يتابع معنا دروس الدورة من الاول يرجي زيارة تلك الروابط علي الترتيب وصولا لهذا الجزأ كما يلي :

الجزأ الاول - مدخل لتحزيم البرامج في الفيجوال استوديو 2008

الجزا الثاني : التحزيم بطريقة ClickOnce Deploymen

- تكلمنا في الجزأ الثاني من دورتنا علي اساسيات التعامل مع تلك الطريقة من التحزيم وذلك حتي نكون ملمين باساسيات هذا النوع قبل الشروع في استخدامه ويا ريت اي احد لم يقرا الجزا الثاني بشكل سليم ان يقوم باعادة قرائته مره اخري نظرا لاننا لن نقوم بسرد اي خيار تم شرحه في الجزا السابق بشكل مفصل ولكن سوف يتم ذكر هدف استخدامه فقط وذلك حتي لا يطول الشرح ويكون الكلام مكررا منعا لحدوث اي ملل او اطالة بدون هدف للموضوع او بمعني اخر هيكون الجزا ده ملخص جدا ويجيب من الاخر بدون رغي علي الفاضي

بسم الله نبدأ ونستعين :

الجانب العملي : -

- سوف نقوم بالتطبيق علي تلك الطريقة من التحزيم باستخدام المثال التالي والذي يمثل برنامجنا المراد نشره او تجربته في مكان اخر او مشاركته لفريق برمجي لتنقيحه او تشغيله علي جهاز لا يحتوي علي الفيجوال استوديو .

تلك هي شاشة البرنامج الخاص بنا والمراد تحزيمه :

105223383.png

والان سوف نبدأ خطوات تحويل البرنامج السابق من ملف EXE الي ملفات تحزيم نهائية يمكن تنصيبها

1- هذه هي شكل ملفات برنامجنا في نافذة Solution Explorer

242673381.png

2- وتلك شكل ملفات مشروعنا من نافذة Windows Explorer

209520493.png

3- والان نفترض انتهائنا من برمجة برنامجنا ووضع ما يحتاجه البرنامج من مصادر سواء صور او ايقونات او قاعدة البيانات في فولدر المشروع كما راينا في نافذة Windows Explorer ونريد الان ان يتم نقل تلك المحتويات بما فيهم الملف التنفيذي للبرنامج وقاعدة البيانات او اي مكتبات قمت بصناعتها بنفسك DLL او اي مصادر اخري في مجلد مخرجات البرنامج اي المجلد الا هيكون في مجلد ProgrameFiles الخاص بنسخة الويندوز او اي مجلد نهائي تريد نزول تلك الملفات به

- وسوف يتم ذلك بتحديد خاصية مهمة لكل مصدر من تلك المصادر الا وهي خاصية : Copy to Output Directory وتلك الخاصية تكون ضمن اي كائن لاي ملف في نافذة Solution Explorer

936890067.png

- حيث نقوم بتحديد اي ملف او مصدر نود وضعه في المجلد النهائي للبرنامج وليكن كما في الصور السابقة ملف Background ونقوم بتغيير قيمة تلك الخاصية الي القيمة Copy always ومعني ذلك ان هذا الملف سوف يتم نسخة اوتوماتيكيا عند بدأ عملية البناء للمشروع Build Project ويتم وضعه في مجلد Bin سواء في مجلد Debug او Release حسب طريقة اخراجك لمشروعك ويتم تطبيق تلك الخاصية علي اي ملف تود نقله مع مشروعك لجهاز اخر

- والان سوف نقوم بتخفيف العبأ علي مشروعنا وتحديد كلاسات بعينها يقوم بتشغيلها حيث يقوم الدوت نت عن انشاء مشروع جديد يقوم باضافة مجموعة من المكتبات الافتراضية حتي وان لم تقوم باستخدامها سوف يتم استيرادها اوتوماتيكيا وما سوف نقوم به الان هو حذف استيراد المكتبات DLL التي لا نحتاج اليها في برنامجنا واضافة اي مكتبات نود دمجها مع المشروع . وذلك كما يلي :

* من قائمة Project نختر امر Properties ونختر تبويب References من الشاشة التالية :

930295356.png

وبالضغط علي زر UnusedReference سوف يتم اظهار نافذة بها المكتبات التي لا تستخدمها في مشروعك ومن ثم الموافقة عليها من اجل حذف تلك المكتبات

4- نقوم بتحويل برنامجنا الي ملف تنفيذي ذو الامتداد EXE وتصدير المصادر والملفات التي جعلناها تنسخ الي الفولدر النهائي بتنفيذ امر Build Project من قائمة Build ونذهب بعدها الي مجلد النهائي للمشروع بتعنا ونشوف ايه الا حصل فيه حيث سنجد احتوائه علي تلك الملفات كما بالصورة التالية وهي تلك الصورة التي نود ان تظهر في جهاز العميل مثلا او اي مكان نحدده فيما بعد من خلال التحزيم :

742835637.png

- وبذلك نكون انتهينا من تهيئة برنامجنا من اجل بدأ عملية التحزيم له

الان كما ذكرنا ان للتحزيم بتلك الطريقة انواع :

- اما التحزيم لمجلد علي الجهاز المحلي او شبكة محلية Lan

- او التحزيم لوضع ناتج التحزيم علي اسطوانة CD او DVD

- او التحزيم لموقع ويب Web Server

والاتي سوف نقوم بشرح كيفية تنفيذ تلك الانواع باستخدام طريقة التحزيم ClickOnce Deploymen

اولا : التحزيم لمجلد علي الجهاز المحلي Local Folder : -

0- نقوم ببدأ عملية التحزيم باستخدام طريقة ClickOnce Deploymen كما يلي :

173930640.png

925018695.png

1- نقوم بتحديد مجلد حفظ مخرجات عملية التحزيم كما يلي :

416503254.png

- في حالة تحديد مجلد علي جهاز محلي كما يلي :

549740117.png

- في حالة تحديد مجلد مشيير علي شبكة محلية Lan كما يلي :

743885940.png

ومن ثم نضغط علي زر OK لتظهر ناتج ما قمنا بفعله كما بالصورة التالية :

في حالة مجلد علي جهاز محلي :

166602805.png

في حالة مجلد علي الشبكة المحلية :

262502062.png

2- نقوم بتحديد نوعية تنصيب البرنامج

- بما ان البرنامج سوف يكون متاح علي جهاز العميل بشكل مستمر اي سوف يتم تنصيبه علي جهاز العميل اذا فانه يمكن تشغيله سواء كان العميل متصل بالانترنت ام لا او بمعني ادق سواء كان العميل موصل كابل الشبكة ام لا - يعني يقبل حالتي online و offline وكمان سوف يضع قائمة باسم البرنامج في قائمة البرامج المسطبه علي الجهاز ويجعل امكانية حذفها من شاشة add or remove programe كما العادة في البرامج العادية وذلك كما يلي :

215035488.png

3- نقوم بعرض الملفات المراد تحزيمها من الملف التشغيلي للبرنامج وقاعدة البيانات وغيره كما يلي :

611636417.png

899029420.png

- وذي ما احنا شرحنا في الدرس السابق وذكرنا ان الشاشة تلك لا تسمح باضافة اي اضافات لها من خلالها ولكن هي التي تقوم باضافة جميع الملفات التي تقع في المجلد bin سواء في مجلد release او debug يعني بمعني اخر لو انتا عايز تضيف ملفات اضافية غير الموجودة في تلك الشاشة كل الا عليك انك تنسخ الملف الي فولدر debug او release حسب المجلد الذي قمت بعمل بناء لمشروعك فيه او بطريقة تانية انك تضيف ذلك الملف من خلال نافذة المستعرض solution explorer الخاص بالفيجوال استوديو وتعطي للخاصية Copy to output القيمة CopyAlways وهي بالنيابة عنك كل ما هتعمل Build لبرنامجك سوف تقوم بنقلها لمجلد debug او release حسب مجلد البناء الخاص بمشروعك

- اما استخدامنا للشاشة فيكمن في عرض الملفات التي سوف يتم تحزيمها بالفعل عشان نتاكد هل هي دي الملفات الا بدنا تحزيمها ام ناقص ملفات اخري .

4- نقوم بتحديد متطلبات او الشروط الواجب توافرها من اجل تنصيب وتشغيل برنامجنا علي الجهاز الخاص بالعميل

294261787.png

682711105.png

- نجعل هنا مصدر ملفات السورس الخاصة بالبرامج المختارة والمطلوب توافرها من اجل عمل البرنامج هو مجلد ملفات التحزيم وهذا الخيار ناجح بما ان البرنامج ونوع تنصيبه سوف يكون اما اوف لاين او اون لاين يعني لا يضمن استمرارية وجود انترنت مشبوك بالجهاز .

5- نقوم باعداد بعض الخيارات الاخري اللازمة لاتمام عملية التحزيم ونقوم باعدادها كما بالصور التالية :

693496006.png

153112040.png

6- تنفيذ عملية التحزيم لما تم ضبطه من اعدادات مسبقا

862933560.png

- فيما يلي سوف نري ذلك في مجلد مخرجات عملية التحزيم كما بالصورة التالية :

415048886.png

ثانيا: التحزيم علي اسطوانة CD او DVD : -

- نقوم بتنفيذ الخطوات السابقة من الخطوة رقم 0 الي الخطوة رقم 4 ونتابع مع الخطوات التالية

5- نقوم باعداد بعض الخيارات الاخري اللازمة لاتمام عملية التحزيم ونقوم باعدادها كما بالصور التالية :

693496006.png

385302275.png

- وبالخيار الخاص بجعل الاسطوانة ذاتية التشغيل سوف يتم انتاج ملف يعمل كاوتورن في مجلد مخرجات عملية التحزيم كما يلي :

903693889.png

6- نقوم بعدها بنسخ محتويات مجلد ناتج عملية التحزيم السابقة علي CD او DVD ونشرها لدي العميل وبمجرد وضع الاسطوانة في مشغل الاسطوانات سوف يتم تشغيل معالج التنصيب اوتوماتيكيا دون الضغط علي ملف Setup

CLICKONCE_PART3.zip

#2

ثالثا: التحزيم علي موقع ويب Web Server : -

0- نقوم ببدأ عملية التحزيم باستخدام طريقة ClickOnce Deploymen كما يلي :

173930640.png

925018695.png

1- نقوم بتحديد مجلد حفظ مخرجات عملية التحزيم علي الويب كما يلي :

947314076.png

2- نقوم بتحديد نوعية تنصيب البرنامج

- بما ان البرنامج سوف يتم رفعه علي الويب سيت اذا سوف يتطلب ذلك الي وجود اتصال فعلي بالانترنت حتي يتم تنصيب البرنامج علي جهاز العميل ويتم ذلك باختيار الخيار التالي :

640536479.png

3- نقوم بعرض الملفات المراد تحزيمها من الملف التشغيلي للبرنامج وقاعدة البيانات وغيره كما يلي :

611636417.png

899029420.png

- وذي ما احنا شرحنا في الدرس السابق وذكرنا ان الشاشة تلك لا تسمح باضافة اي اضافات لها من خلالها ولكن هي التي تقوم باضافة جميع الملفات التي تقع في المجلد bin سواء في مجلد release او debug يعني بمعني اخر لو انتا عايز تضيف ملفات اضافية غير الموجودة في تلك الشاشة كل الا عليك انك تنسخ الملف الي فولدر debug او release حسب المجلد الذي قمت بعمل بناء لمشروعك فيه او بطريقة تانية انك تضيف ذلك الملف من خلال نافذة المستعرض solution explorer الخاص بالفيجوال استوديو وتعطي للخاصية Copy to output القيمة CopyAlways وهي بالنيابة عنك كل ما هتعمل Build لبرنامجك سوف تقوم بنقلها لمجلد debug او release حسب مجلد البناء الخاص بمشروعك

- اما استخدامنا للشاشة فيكمن في عرض الملفات التي سوف يتم تحزيمها بالفعل عشان نتاكد هل هي دي الملفات الا بدنا تحزيمها ام ناقص ملفات اخري .

4- نقوم بتحديد متطلبات او الشروط الواجب توافرها من اجل تنصيب وتشغيل برنامجنا علي الجهاز الخاص بالعميل

294261787.png

682711105.png

- نجعل هنا مصدر ملفات السورس الخاصة بالبرامج المختارة والمطلوب توافرها من اجل عمل البرنامج هو مجلد ملفات التحزيم وهذا الخيار ناجح بما ان البرنامج ونوع تنصيبه سوف يكون اما اوف لاين او اون لاين يعني لا يضمن استمرارية وجود انترنت مشبوك بالجهاز .

5- نقوم باعداد بعض الخيارات الاخري اللازمة لاتمام عملية التحزيم ونقوم باعدادها كما بالصور التالية :

693496006.png

476864940.png

6- تنفيذ عملية التحزيم لما تم ضبطه من اعدادات مسبقا

862933560.png

- فيما يلي سوف نري ذلك في مجلد مخرجات عملية التحزيم علي الويب سيت كما بالصورة التالية :

836290051.png

- حيث الصفحة المسماه Publish هي صفحة تنصيب البرنامج علي جهاز العميل وتكون شكلها عند قيام العميل بفتحها في متصفحه من اجل تنصيب برنامجك علي جهازه كما يلي :

203363006.png

مجلد صور الشرح للدرس

وبذلك نكون قد انتهينا من الطريقة الاولي من التحزيم

وباذن الله في الجزأ التالي من تلك الدروة سوف نبدأ في الطريقة الثانية للتحزيم الا وهي طريقة Windows Installer Deployment Project

وفي الختام اتمنا اكون وفقت لتوصيل المعلومة اليكم فان اصبت فهو من الله وان اخطأت فمن نفسي ومن الشيطان

والله ولي التوفيق

وما اوتيت من العلم الا قليلا

تحياتي للجميع ولو في اي تعليق او نقد ارحب به جدا

اسئلكم صالح الدعاء فلا خير في كاتم العلم

والسلام عليكم ورحمة الله وبركاته

#3

السلام عليكم

انا مواصل معك ودائما انتظر الدروس الجديدة ... الله يجزيك الخير

أتمنى من الإدارة النظر في هذا الموضوع المتواصل والشيق والمتعوب عليه وان يتم تثبيته

تم تعديل هذه المشاركة بواسطة am_proactive في 13 مارس 2009 في 03:22

من وجد الله فماذا فقد -- ومن فقد الله فماذا وجد

Don't Say I Don't Know But Say I Will Try

#4

جزاك الله كل خير يا أخي

رائي في سيادتك أستاذ ، أستاذ ، أستاذ من أكاديمية المعادي وحتى الفريق العربي للبرمجة

ربنا يوفقك ويزيدك علماً .

مع خالص التحيات

أخيك شادي المصري

#6

الشرح واضح ورائع

ولكن الصور غير ظاهرة :)

تم تعديل هذه المشاركة بواسطة emerlad في 26 أبريل 2010 في 02:53

#7

موضوع مهم ورائع

ولكن الصور لا تظهر

#8

يعطيك العافيه

تابع الدروس فنحن معك

اللهم صلّ على سيدنا محمد وعلى آله وصحبه وسلّم


موقعي الرياضي

#9

أخي الحبيبوفقك اللهبتمنى منك سؤالكيف أضع شرط التعامل مع السيريال نمبر في برنامج التحزيم ؟

قال رسول الله صلى الله عليه و سلم :

عبادة في الهرج كهجرة إلي

وقال أيضاً :

من عيّر أخاه بذنب لم يمت حتى يفعله

أو كما قال

www.dr.syria4soft.com

#10

السلام عليكم أخي شكرا لك ، و لكن سؤال واح : كيف سأحمي برنامج الاعداد بحيث يطلب من العميل كود يعتمد على رقم الهارد ديسك ... و شكرا لك

قال رسول الله صلى الله عليه و سلم :

عبادة في الهرج كهجرة إلي

وقال أيضاً :

من عيّر أخاه بذنب لم يمت حتى يفعله

أو كما قال

www.dr.syria4soft.com

#11

شكرااااااااااااا الله يعطيك العافيه

مواضيع مشابهة