ملفات تكوين تنشيط
An application that provides a managed extensibility model can require extensions إلى run with a particular الإصدار of the .NET Framework runtime, by specifying that الإصدار in an ملف تكوين تطبيق or a host configuration file. Before the .NET Framework الإصدار 4, the only way إلى write extensions with a later الإصدار of the runtime was إلى provide a different configuration ملف for the application. Unfortunately, this had the undesirable consequence of forcing all extensions إلى استخدم the newer وقت التشغيل.
توفر ملفات تكوين تنشيط حل بديل للسيناريو المحدد الذي يستخدم كاتب ملحق طراز التوافق مع البرامج الخارجية الخاص بالتطبيق كـ نظاما أساسيا والجميع الملحقات التي يتم تحميل عناصر التحكم الكامل. In that scenario, it هو reasonable إلى allow the extension author إلى decide which الإصدار of the runtime هو loaded and activated.
For example, you might want إلى استخدم the .NET Framework 4 إلى إنشاء a set of Microsoft وحدة تحكم الإدارة (MMC) snap-زر 'Ins' إلى يخصص the استخدمr interface of a وحدة تحكم الإدارة, on computers where MMC specifies the activation of the NET Framework. الإصدار 2.0 وقت التشغيل. You cannot directly replace the activation information for MMC, but you can استخدم an environment variable إلى specify the location of an activation configuration ملف that overrides it for a particular console, so that the .NET Framework 4 وقت التشغيل هو activated when the console هو launched.
توفير تنشيط ملف تكوين
تكوين التنشيط ملف تتبع أسماء نقش نفسه كتكوين التطبيق ملف أسماء، ولكن باستخدام.activation_config الملحق. على سبيل المثال، لدى تطبيق ما يسمى MyApp.exe ملف تكوين تطبيق المسمى MyApp.exe.config و يسمى ملف تكوين تنشيط MyApp.exe.activation_config.
يمكن أن تحتوي ملفات تكوين تنشيط على أية عناصر ملف التكوين، ولكن فقط العناصر التي يتم توزيع هي تلك التي تستخدم عادة للتنشيط:
عناصر في مقطع <بدء التشغيل>.
<gcServer>، <appdomainResourceMonitoring> ، و عناصر <etwEnable> من مقطع <وقت التشغيل>.
هام
تأكد من أن هذه الثلاثة <runtime>الإعدادات في ملف التكوين تنشيط هي نفسها كـ الإعدادات المناظرة في التطبيق مضيف أو تكوين ملف.
ملف تكوين تنشيط هو المستخدمة بواسطة رمز الرقاقة التي تبدأ في وقت التشغيل فقط. وقت التشغيل نفسه قد لا التعامل مع الملف.
Once you have created the ملف تكوين تطبيق, set the COMPLUS_ApplicationMigrationRuntimeActivationConfigPath environment variable إلى the path where the file هو located. During the عملية of selecting the runtime إلى be activated, this path هو searched for an ملف تكوين تطبيق whose name matches the pattern.
إذا كان متغير بيئة هو مجموعة ولكن مسار المحدد يحتوي على ملف تكوين تنشيط التي تطابق النقش، تنشيط وقت التشغيل هو التحكم فيها من قبل تطبيق أو ملف تكوين مضيف، كالمعتاد.
يمكنك تعيين متغير بيئة بشكل عمومي أو بعملية مشغل تكوين بيئة. إعداد متغيرات بيئة العمومية هو عرضه لحالات السباق مع تطبيقات غير ذلك.
على سبيل المثال، قم بنسخ ملف تكوين تنشيط إلى مجلد جلسة commو-line التالية، قم بتعيين متغير بيئة هذا مسار، و يقوم بتشغيل تطبيق:
copy c:\MyConfigs\MyApp.exe.activation_config c:\CustomConfigs
set COMPLUS_ApplicationMigrationRuntimeActivationConfigPath =
c:\CustomConfigs
c:\Program Files\MyApp\MyApp.exe
تحديد ملف التكوين التنشيط التالي تنشيط .NET Framework 4وقت التشغيل، و تكرار hypothetical <appDomainResourceMonitoring>من ملف تكوين تطبيق افتراضية:
<configuration>
<startup>
<supportedRuntime version="v4.0.xxxx"/>
</startup>
<runtime>
<appDomainResourceMonitoring enabled="true"/>
</runtime>
</configuration>
وظائف تنشيط المعتمدة
ملفات تكوين تنشيط على الأساليب التالية للتنشيط. المصطلح "قديم" يشير إلى إصدارات.NET Framework قبل .NET Framework 4.
قم بتشغيل أي ملف.exe مدارة تشغيل جهاز كمبيوتر الموقع .NET Framework 4مثبت.
استخدام قديم استضافة API؛ على سبيل المثال، دالة عمومي CorBindToRuntimeHost.
تحميل و تشغيل المكونات مختلط الأوضاع قديم التي تم إنشاؤها باستخدام Visual C + +.
تحميل وتشغيل COM مكونات المتوارثة.
ملاحظة
يتم استخدام ملفات تكوين تنشيط عند تحميل و تشغيل COM مكونات التي تم إنشاؤها باستخدام .NET Framework 4أو الإصدار الأحدث.
Using the ICLRMetaHostPolicy::GetRequestedRuntime أسلوب in the hosting API مع the METAHOST_POLICY_USE_PROCESS_IMAGE_PATH يؤشر.
ICLRMetaHostPolicy::GetRequestedRuntime أسلوب استخدام و تزويد مسار ملف تجميع ل pwzBinaryمعلمة.
ملاحظة
يتم استخدام ملفات تكوين تنشيط إذا ICLRMetaHostPolicy::GetRequestedRuntime الطريقة هو تسمى وأي منهما في pwzBinaryمعلمة ولا يؤشر METAHOST_POLICY_USE_PROCESS_IMAGE_PATH هو المستخدمة.