#1
|
||||
|
||||
الدرس السابع والأربعون : .net assemblies - دورة .net 2008
بسم الله الرحمن الرحيم . السلام عليكم ورحمة الله وبركاته . موعدنا هذه الفترة مع ال .net assemblies ، لن نطيل فيها كثيراً ولكننا سنعرف النقاط الاساسية فيها فيما يمكنك الاطلاع على المزيد عنها من خلال msdn ال namespace . في نفس ال namespace يمكن لجميع المكونات تحته ان ترى بعضها البعض ، لذا دوماً وفي مشاريعك الجديدة اجعل namespace موحد لجميع مكونات برنامجك . C#: كود PHP:
كود PHP:
C#: كود PHP:
كود PHP:
C#: كود PHP:
كود PHP:
تغيير ال Default Namespace : لتغيير مجال الاسماء الافتراضي : Format of a .NET Assembly إذا قمت بفتح ملف الاسمبلي ب dumpbin.exe مثلاً يمكنك ان تلاحظ أن مكلف الاسمبلي يتكون من العناصر التالية : Win32 file header هنا ستجد معلومات عن نوع هذا الملف ، هل هو console ام GUI ام dll وكيفية تنفيذه على نظم التشغيل من ويندوز CLR file header يحتوي على المعلومات التي لا بد لأي .net application ان يدعمها ، يحتوي على طريقة كتابة ال managed file ووجود ال resources من عدمه وخلافه . لا تهمك كثيراً المعلومات السابقة للنقطتين السابقتين ، لإنك لن تتعامل معها سوى إذا ما كنت تحتاج لبناء كومبايلر خاص بك تحت بيئة عمل .net . CIL code الكود الخاص ببرنامجك ، يتم ترجمته فوراً باستخدام JIT التي تحدثنا عنها سابقاً ، سيكون عنها درس مستقل إن شاء الله . Type ****data تحتوي على تفاصيل الانواع الخارجية التي تستخدمها في برنامجك . An assembly manifest الرابط بين ملفات الاسمبلي المختلفة ، تحدد اصدار الاسمبلي وخلافه . Optional embedded resources اي ملف اسمبلي يمكن ان يحتوي على اي عدد من ملفات الريسورس تشير إلى صور وايقونات وخلافه . Private Assemblies ال Private Assemblies ملف اسمبلي يعمل من خلال مسار البرنامج او التطبيق ، حيث لن يبحث ال visual studio عن هذا الملف سواء في الريجستري او في أي مكان آخر ، فقط سيبحث في مسار البرنامج عنه . في حالة حذف برنامجك يتم حذف هذه الملفات معه ، ايضاً يمكنك نقل التطبيق بعد عمل setup له مباشرة كونه لا يتعامل مع أي شيء يخص النظام . ملفات الاسمبلي الافتراضية او ال dll التي تقوم بعملها هي من هذا النوع . Shared Assemblies هذا هو النوع الثاني ، هنا لن تكون وحدك من يستخدم ملف ال dll هذا ، بل إن بإمكان الملف التعامل مع اكثر من تطبيق على نفس الجهاز ، مثلاً System.Windows.Forms.dl ، عادة ما تجدها في ملف الاسمبلي الموجود في الويندوز ولا يتم حذفها مع حذف برنامجك . اول نقطة ستتعامل معها لإنشاء ملف اسمبلي من هذا النوع هو ضرورة وجود اسم uniqe لهذا الملف حتى لا يتضارب مع باقي الملفات الأخرى ، أيام ال COM كان هناك ما يعرف باسم COM globally unique identifier (GUID) ، حيث يتم اعطاء اسماء مختلفة لكل COM جديد ، الآن اصبح عليك اعطاءه ما يعرف باسم strong name والذي لا يعدو كونه 128 بت من الارقام تشترك المكونات التالية في تحديده : - اسم ملف الاسمبلي . - نسخة ملف الاسمبلي . - public key value الموجودة في AssemblyKeyFile . - في حالة وجود اي اعدادت اقليمية في AssemblyCulture . - digital signature يتم تكوينه باستخدام hash بين محتويات ملف الاسمبلي وال public key . لعمل public key نستخدم البرنامج SDK’s sn.exe بالشكل التالي مثلاً : كود PHP:
*** لم اقم بتجربة محتويات هذا الدرس لذا من يجد خطأ اتمنى منه ابلاغي به .
|
|
|
المواضيع المتشابهه | ||||
الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
الدرس السابع والخمسون : Wpf 2d - دورة .net 2008 | khaledbelal | دورة .NET 2008 من منتدى فيجوال بيسك للعرب | 2 | 03-05-2010 06:57 PM |
الدرس الثاني والأربعون : ال Gc دورة .net 2008 | khaledbelal | دورة .NET 2008 من منتدى فيجوال بيسك للعرب | 0 | 02-26-2010 04:17 PM |
الدرس السابع والثلاثون : Automatic Properties دورة .net 2008 | khaledbelal | دورة .NET 2008 من منتدى فيجوال بيسك للعرب | 0 | 02-25-2010 02:52 PM |
الدرس السابع : if statement - دورة سي شارب 2008 | khaledbelal | دورة CSharp 2008 من منتديات حور العين الاسلامية | 0 | 02-22-2010 09:35 PM |
الدرس السابع عشر : مقدمة إلى مبادئ Oop دورة .net 2008 | khaledbelal | دورة .NET 2008 من منتدى فيجوال بيسك للعرب | 0 | 02-19-2010 08:16 PM |