Sintomi
Chiamata al metodo STA COM che comporta 0x8001010E RPC_E_WRONG_THREAD dopo l'installazione di .NET Framework 4.8.
Soluzioni alternative
Metodo 1: Variabile di ambiente
Impostare la seguente variabile di ambiente:COMPLUS_DisableCCWSupportIAgileObject=1
Questo metodo influisce su qualsiasi ambiente che eredita questa variabile di ambiente. Potrebbe trattarsi di una singola sessione della console oppure può influire sull'intero computer se imposti la variabile di ambiente a livello globale. Il nome della variabile di ambiente non fa distinzione tra maiuscole e minuscole.
Metodo 2: Registro di sistema
Usando l'editor del Registro di sistema (regedit.exe), individuare una delle sottochiavi seguenti:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
Per i processi a 32 bit su sistemi x64, usare:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework
Quindi aggiungere il seguente:Nome valore: DisableCCWSupportIAgileObject Tipo: DWORD (32 bit) Valore (denominato anche REG_WORD) Valore: 1
È possibile usare lo strumento Windows REG.EXE per aggiungere questo valore da un ambiente della riga di comando o di scripting. Ad esempio:
reg add HKLM\SOFTWARE\Microsoft\. NETFramework /v DisableCCWSupportIAgileObject /t REG_DWORD /d 1
In questo caso, al posto di HKEY_LOCAL_MACHINE viene usato HKLM. Usare reg add /? per visualizzare la Guida su questa sintassi. Il nome del valore del Registro di sistema non fa distinzione tra maiuscole e minuscole.
Ulteriori informazioni
Ulteriori informazioni su questa modifica del runtime .NET Framework 4.8 sono disponibili qui: 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
Si applica a
Applicazioni in esecuzione su .NET Framework 4.8 nelle versioni supportate di Windows.