Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Note
Tento článek popisuje pokyny k interoperabilitě modelu COM v rozhraní .NET Framework, které využívají zastaralý nástroj Registrace sestavení (Regasm.exe), globální mezipaměť sestavení a registraci modelu COM prostřednictvím registru. Pro moderní .NET použijte generování zdrojového kódu pro COM nebo rozhraní API ComWrappers. Další informace naleznete v tématu Interoperabilita modelu COM.
Můžete spustit nástroj příkazového řádku s názvem Nástroj pro registraci sestavení (Regasm.exe) k registraci nebo zrušení registrace sestavení .NET Framework pro použití s com. Regasm.exe přidá informace o třídě do systémového registru, aby klienti MODELU COM mohli transparentně používat třídu .NET Framework. Třída RegistrationServices poskytuje ekvivalentní funkce.
Pro .NET Framework musí být spravovaná komponenta zaregistrovaná v registru Windows, aby bylo možné ji aktivovat z klienta com. Následující tabulka uvádí klíče, které Regasm.exe obvykle přidávají do registru Systému Windows. (000000 označuje skutečnou hodnotu GUID.)
| GUID | Description | Klíč registru |
|---|---|---|
| identifikátor CLSID | Identifikátor třídy | HKEY_CLASSES_ROOT\CLSID\{000…000} |
| IID | Identifikátor rozhraní | HKEY_CLASSES_ROOT\Interface\{000…000} |
| LIBID | Identifikátor knihovny | HKEY_CLASSES_ROOT\TypeLib\{000…000} |
| ProgID | Programový identifikátor | HKEY_CLASSES_ROOT\000…000 |
Pod klíčem HKCR\CLSID\{0000…0000} je výchozí hodnota nastavena na ProgID třídy a jsou přidány dvě nové pojmenované hodnoty, Class a Assembly. Modul runtime načte hodnotu sestavení z registru a předá ji do překladače sestavení modulu runtime. Překladač sestavení se pokusí najít sestavení na základě informací o sestavení, jako je název a číslo verze. Aby překladač sestavení našel sestavení, musí být sestavení v jednom z následujících umístění:
Globální mezipaměť sestavení (musí být sestavení se silným názvem).
V adresáři aplikace. Sestavení načtená z cesty aplikace jsou přístupná pouze z této aplikace.
Podle cesty k souboru určené pomocí parametru /codebase pro Regasm.exe.
Regasm.exe také vytvoří klíč InProcServer32 pod HKCR\CLSID\{0000…0000} klíčem. Výchozí hodnota klíče je nastavena na název knihovny DLL, která inicializuje modul CLR (Mscoree.dll).
Kontrola položek registru
Interoperabilita modelu COM v .NET Framework poskytuje standardní implementaci továrny tříd pro vytvoření instance libovolné třídy rozhraní .NET Framework. Klienti mohou zavolat DllGetClassObject ve spravované knihovně DLL, aby získali továrnu tříd a vytvořili objekty stejně jako s jakoukoli jinou COM komponentou.
U podklíče InprocServer32 je místo tradiční knihovny typů modelu COM zobrazen odkaz na Mscoree.dll, což indikuje, že běhové prostředí společného jazyka vytvoří spravovaný objekt.