الأعراض
يؤدي استدعاء أسلوب STA COM إلى 0x8001010E RPC_E_WRONG_THREAD بعد تثبيت .NET Framework 4.8.
الحلول
الأسلوب 1: متغير البيئة
تعيين متغير البيئة التالي:COMPLUS_DisableCCWSupportIAgileObject=1
يؤثر هذا الأسلوب على أي بيئة ترث متغير البيئة هذا. قد تكون هذه مجرد جلسة وحدة تحكم واحدة، أو قد تؤثر على الجهاز بأكمله إذا قمت بتعيين متغير البيئة عالميا. اسم متغير البيئة غير حساس لحالة الأحرف.
الأسلوب 2: التسجيل
باستخدام محرر السجل (regedit.exe)، ابحث عن أي من المفتاحين الفرعيين التاليين:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
بالنسبة إلى عمليات الإصدار 32 بت على أنظمة x64، استخدم:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework
ثم أضف ما يلي: اسم القيمة: DisableCCWSupportIAgileObject : قيمة DWORD (32 بت) (تسمى أيضا REG_WORD): 1
يمكنك استخدام أداة Windows REG.EXE لإضافة هذه القيمة من سطر الأوامر أو بيئة البرمجة النصية. على سبيل المثال:
reg add HKLM\SOFTWARE\Microsoft\. NETFramework /v DisableCCWSupportIAgileObject /t REG_DWORD /d 1
في هذه الحالة، يتم استخدام HKLM بدلا من HKEY_LOCAL_MACHINE. هل تستخدم reg add /؟ للاطلاع على تعليمات حول بناء الجملة هذا. اسم قيمة التسجيل غير حساس لحالة الأحرف.
مزيد من المعلومات
يمكن العثور على مزيد من المعلومات حول هذا .NET Framework تغيير وقت التشغيل 4.8 هنا: https://learn.microsoft.com/en-us/dotnet/framework/migration-guide/runtime/4.7.2-4.8#net-interop-will-now-queryinterface-for-iagileobject-a-winrt-interface
ينطبق على
التطبيقات التي تعمل على .NET Framework 4.8 على الإصدارات المدعومة من Windows.