كيفية القيام بما يلي: توقيع التجميع باسم قوي

عدة تطوير برامج Windows (SDK) يوفر عدة طرق للتوقيع على تجميع باسم قوي:

  • باستخدام رابط التجميع (Al.exe) الذي يوفره Windows SDK.

  • استخدم سمات التجميع لإدراج معلومات الاسم القوي في التعليمات البرمجية الخاصة بك. يمكنك استخدام إما AssemblyKeyFileAttribute أو AssemblyKeyNameAttribute ، حسب مكان ملف المفتاح المفترض إستخدامه.

    ملاحظةملاحظة

    في .NET Framework الإصدار 2.0, بعض المحولات البرمجية تُصدِر رسائل تحذير عند استخدام السمات.

  • باستخدام خيارات برنامج التحويل البرمجي مثل /keyfile أو /delaysign في C# و Visual Basic، أو خياري الرابط /KEYFILE أو /DELAYSIGN في C++. (للحصول على معلومات حول التوقيع المتأخر ، راجع تأجيل توقيع تجميع.)

ملاحظةملاحظة

في Visual Studio 2005 ، توفر بيئة التطوير أدوات لتوقيع التجميعات.راجع إدارة "التجميع" و "بيان" التوقيع و صفحة تسجيل الدخول، مصمم المشروع.

يجب أن يكون لديك زوج مفاتيح تشفير للتوقيع على تجميع باسم قوي. لمزيد من المعلومات حول إنشاء زوج مفاتيح , راجع كيفية القيام بـ: إنشاء زوج مفاتيح عام/خاص.

لإنشاء و توقيع تجميع باسم قوي باستخدام رابط التجميع

  • في موجه الأوامر، اكتب الأمر التالي:

    al /out:<assembly name> <module name> /keyfile:<file name>

    في هذا الأمر اسم التجميع هو اسم التجميع المراد التوقيع عليه باسم قوي , اسم الوحدة هو اسم وحدة التعليمات البرمجية المستخدمة في إنشاء التجميع و اسم الملف هو اسم الحاوية أو الملف الذي يحتوي على زوج المفاتيح.

المثال التالي يوقع على التجميع MyAssembly.dll باسم قوي باستخدام ملف المفاتيح sgKey.snk.

al /out:MyAssembly.dll MyModule.netmodule /keyfile:sgKey.snk

للتوقيع على تجميع باسم قوي باستخدام السمات

  • في وحدة التعليمات البرمجية , أضف AssemblyKeyFileAttribute أو الـ AssemblyKeyNameAttribute، التي تحدد اسم الملف أو الحاوية التي تحتوي على زوج المفاتيح لاستخدامها عند التوقيع على التجميع باسم قوي.

يستخدم مثال التعليمات البرمجية التالي AssemblyKeyFileAttribute مع ملف مفاتيح يسمى sgKey.snk ، الموجود في الدليل حيث تمت ترجمة التجميع برمجياً. هذا يفترض أن التجميع تم تحويله برمجياً باستخدام محولات سطر الأوامر vbc.exe و csc.exe.

<Assembly:AssemblyKeyFileAttribute("sgKey.snk")>
[assembly:AssemblyKeyFileAttribute(@"sgKey.snk")]
ملاحظةملاحظة

في بيئات التطوير مثل Visual Studio ، لا يمكن ترجمة التجميع في دليل المشروع.على سبيل المثال، بعض إصدارات Visual Studio تترجم مشاريع C# برمجياً في الدليل الفرعي bin\Debug .في هذه الحالة، يكون مسار في مثال التعليمة البرمجية "...\\..\\sgKey.snk".في Visual Studio 2005 ملف المفاتيح لـ C# يمكن تحديده في إعدادات المشروع.

يمكنك أيضاً تأخير التوقيع على تجميع عند التحويل البرمجي. لمزيد من المعلومات، راجع التوقيع المتأخر على تجمعيع .

عند التوقيع على التجميع باسم قوي رابط التجميع (Al.exe) يبحث عن ملف مفتاح قريب من الدليل الحالي و إلى دليل الإخراج. عند استخدام المحولات البرمجية التي تعمل بسطر الأوامر ، يمكنك ببساطة نسخ المفتاح إلى الدليل الحالي الذي يحتوي على وحدات التعليمات البرمجية الخاصة بك.

راجع أيضًا:

المهام

كيفية القيام بما يلي: إنشاء زوج مفاتيح عام/خاص

المرجع

صفحة تسجيل الدخول، مصمم المشروع

المبادئ

إنشاء و استخدام تجميعات ذات اسم قوي

تأجيل توقيع تجميع

موارد أخرى

إدارة "التجميع" و "بيان" التوقيع