Príznaky
Vyvolanie metódy STA COM, čo má za následok 0x8001010E RPC_E_WRONG_THREAD po inštalácii .NET Framework 4.8.
Riešenia
Metóda 1: Premenná prostredia
Nastavte nasledujúcu premennú prostredia:COMPLUS_DisableCCWSupportIAgileObject=1
Táto metóda ovplyvňuje každé prostredie, ktoré dedí túto premennú prostredia. Môže to byť len jedna relácia konzoly alebo môže ovplyvniť celý počítač, ak nastavíte premennú prostredia globálne. Názov premennej prostredia nerozlišuje malé a veľké písmená.
Metóda 2: Databáza Registry
Pomocou editora databázy Registry (regedit.exe) vyhľadajte niektorý z nasledujúcich podkľúč:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
Pri 32-bitových procesoch v systémoch x64 použite:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework
Potom pridajte nasledujúci:Názov hodnoty: DisableCCWSupportIAgileObject Typ: DWORD (32-bitová) hodnota (nazývaná aj REG_WORD) Hodnota: 1
Túto hodnotu môžete pridať pomocou nástroja REG.EXE systému Windows z príkazového riadka alebo skriptového prostredia. Príklad:
reg add HKLM\SOFTWARE\Microsoft\. NETFramework /v DisableCCWSupportIAgileObject /t REG_DWORD /d 1
V tomto prípade sa namiesto HKEY_LOCAL_MACHINE používa funkcia HKLM. Použiť reg add /? ak chcete zobraziť Pomocníka pre túto syntax. V názve hodnoty databázy Registry sa nerozlišuje malé a veľké písmená.
Ďalšie informácie
Ďalšie informácie o tejto zmene modulu runtime .NET Framework 4.8 nájdete tu: 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
Vzťahuje sa na
Aplikácie spustené v .NET Framework 4.8 v podporovaných verziách Windowsu.