Obsługa aplikacji IMsoComponent jest włączona
Wprowadzono zmianę, aby uniknąć zawsze rejestrowania wątków formularzy systemu Windows przy użyciu istniejących wystąpień IMsoComponentManager . Można jednak wyrazić zgodę na zarejestrowanie istniejących IMsoComponentManager
wystąpień w wątkach windows Forms.
Wprowadzona wersja
.NET 9 (wersja zapoznawcza 2)
Poprzednie zachowanie
Wcześniej wątki formularzy systemu Windows zawsze były rejestrowane przy użyciu istniejących IMsoComponentManager
wystąpień.
Nowe zachowanie
Począwszy od platformy .NET 9, wątki windows Forms nie są automatycznie integrowane z zarejestrowanym IMsoComponentManagers
procesem. Aby przywrócić poprzednie zachowanie, ustaw przełącznik Switch.System.Windows.Forms.EnableMsoComponentManager
.
Kategoria zmiany
Ta zmiana jest zmianą behawioralną.
Przyczyna wprowadzenia zmiany
Ta zmiana została wprowadzona pod kątem wydajności i wydajności. Poprzednie zachowanie przedstawiało wiele obciążeń, ponieważ używało modelu COM, a nie wszyscy deweloperzy potrzebują tego zachowania.
Zalecana akcja
Jeśli chcesz przywrócić poprzednie zachowanie, możesz wyrazić zgodę na IMsoComponent
obsługę przy użyciu przełącznika w pliku runtimeconfig.json lub jako RuntimeHostConfigurationOption
elementu w pliku projektu.
plik runtimeconfig.json:
{
"configProperties": {
"Switch.System.Windows.Forms.EnableMsoComponentManager": true
}
}
Plik projektu:
<ItemGroup>
<RuntimeHostConfigurationOption Include="Switch.System.Windows.Forms.EnableMsoComponentManager" Value="true" />
</ItemGroup>