Paketera en .NET Framework-sammansättning för COM
COM-utvecklare kan dra nytta av följande information om de hanterade typer som de planerar att införliva i sitt program:
En lista över typer som COM-program kan använda
Vissa hanterade typer är osynliga för COM. vissa är synliga men inte kreabila; och vissa är både synliga och kreabila. En sammansättning kan bestå av valfri kombination av osynliga, synliga, inte kreatabeller och kreabila typer. För fullständighet kan du identifiera de typer i en sammansättning som du tänker exponera för COM, särskilt när dessa typer är en delmängd av de typer som exponeras för .NET Framework.
Mer information finns i Kvalificerande .NET-typer för interoperation.
Versionsinstruktioner
Hanterade klasser som implementerar klassgränssnittet (ett COM-interopgenererat gränssnitt) omfattas av versionsbegränsningar.
Riktlinjer för hur du använder klassgränssnittet finns i Introduktion till klassgränssnittet.
Distributionsinstruktioner
Starka namngivna sammansättningar som är signerade av en utgivare kan installeras i den globala sammansättningscachen. Osignerade sammansättningar måste installeras på användarens dator som privata sammansättningar.
Mer information finns i Överväganden för sammansättningssäkerhet.
Skriv biblioteksinkludering
De flesta typer kräver ett typbibliotek när det används av ett COM-program. Du kan generera ett typbibliotek eller låta COM-utvecklare utföra den här uppgiften. Windows SDK innehåller följande alternativ för att generera ett typbibliotek:
Oavsett vilken mekanism du väljer inkluderas endast offentliga typer som definierats i den sammansättning som du anger i det genererade typbiblioteket.
Anvisningar finns i Så här bäddar du in typbibliotek som Win32-resurser i . NET-baserade program.
Typbiblioteksexportör
Typbiblioteksexportören (Tlbexp.exe) är ett kommandoradsverktyg som konverterar de klasser och gränssnitt som ingår i en sammansättning till ett COM-typbibliotek. När typinformationen för klassen är tillgänglig kan COM-klienter skapa en instans av .NET-klassen och anropa instansens metoder, precis som om det vore ett COM-objekt. Tlbexp.exe konverterar en hel sammansättning samtidigt. Du kan inte använda Tlbexp.exe för att generera typinformation för en delmängd av de typer som definierats i en sammansättning.
TypeLibConverter-klass
Klassen TypeLibConverter , som finns i namnområdet System.Runtime.Interop , konverterar klasserna och gränssnitten i en sammansättning till ett COM-typbibliotek. Det här API:et genererar samma typinformation som typbiblioteksexportören, som beskrivs i föregående avsnitt.
Klassen TypeLibConverter implementerar ITypeLibConverter.
Verktyg för sammansättningsregistrering
Verktyget för sammansättningsregistrering (Regasm.exe) kan generera och registrera ett typbibliotek när du använder alternativet /tlb: . COM-klienter kräver att typbibliotek installeras i Windows-registret. Utan det här alternativet registrerar Regasm.exe bara typerna i en sammansättning, inte typbiblioteket. Att registrera typerna i en sammansättning och registrera typbiblioteket är distinkta aktiviteter.
Installationsverktyg för .NET Services
Installationsverktyget för .NET Services (Regsvcs.exe) lägger till hanterade klasser i Windows 2000 Component Services och kombinerar flera uppgifter i ett enda verktyg. Förutom att läsa in och registrera en sammansättning kan Regsvcs.exe generera, registrera och installera typbiblioteket i ett befintligt COM+ 1.0-program.
Se även
- TypeLibConverter
- ITypeLibConverter
- Exponera .NET Framework-komponenter för COM
- Kvalificerade .NET-typer för interoperation
- Introduktion till klassgränssnittet
- Säkerhetsöverväganden för sammansättning
- Tlbexp.exe (typbiblioteksexportör)
- Registrera sammansättningar med COM
- Anvisningar: Bädda in typbibliotek som Win32-resurser i program