Jelenségek
A STA COM metódus meghívása 0x8001010E RPC_E_WRONG_THREAD eredményez a .NET-keretrendszer 4.8 telepítése után.
Kerülő megoldások
1. módszer: Környezeti változó
Állítsa be a következő környezeti változót:COMPLUS_DisableCCWSupportIAgileObject=1
Ez a módszer minden olyan környezetet érint, amely örökli ezt a környezeti változót. Ez lehet csak egy konzolmunkamenet, vagy az egész gépre hatással lehet, ha globálisan állítja be a környezeti változót. A környezeti változó neve nem különbözik a kis- és nagybetűktől.
2. módszer: Beállításjegyzék
A Beállításszerkesztő (regedit.exe) használatával keresse meg az alábbi alkulcsok egyikét:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
X64 rendszereken 32 bites folyamatokhoz használja a következőt:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework
Ezután adja hozzá a következő:Érték neve: DisableCCWSupportIAgileObject Típus: DWORD (32 bites) Érték (más néven REG_WORD) Érték: 1
A Windows REG.EXE eszközzel hozzáadhatja ezt az értéket parancssori vagy szkriptelési környezetből. Például:
reg add HKLM\SOFTWARE\Microsoft\. NETFramework /v DisableCCWSupportIAgileObject /t REG_DWORD /d 1
Ebben az esetben a HKLM HKEY_LOCAL_MACHINE helyett használatos. Reg add /? a szintaxis súgójának megtekintéséhez. A beállításazonosító neve nem különbözik a kis- és nagybetűktől.
További információ
Erről a .NET-keretrendszer 4.8-os futtatókörnyezet módosításáról itt talál további információt: 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
A következőkre vonatkozik:
A .NET-keretrendszer 4.8-on futó alkalmazások a Windows támogatott verzióin.