Gewusst wie: Generieren primärer Interop-Assemblys mit "Tlbimp.exe"

Aktualisiert: November 2007

Der Type Library Importer-Tool (Tlbimp.exe) ist der direkteste Ansatz zum Erstellen primärer Interop-Assemblys.

So generieren Sie eine primäre Interop-Assembly mithilfe von "Tlbimp.exe"

  • Geben Sie an der Eingabeaufforderung Folgendes ein:

    tlbimptlbdatei **/primary /keyfile:dateiname/out:**assemblyname

    Bei diesem Befehl ist tlbdatei die Datei mit der COM-Typbibliothek, dateiname der Name des Containers oder der Datei mit dem Schlüsselpaar und assemblyname der Name der Assembly, die mit einem starken Namen signiert wird.

Primäre Interop-Assemblys können nur auf andere primäre Interop-Assemblys verweisen. Wenn die Assembly auf Typen aus einer COM-Typbibliothek von Drittanbietern verweist, müssen Sie vom Herausgeber eine primäre Interop-Assembly erwerben, bevor Sie eine eigene primäre Interop-Assembly generieren können. Wenn Sie selbst der Herausgeber sind, müssen Sie eine primäre Interop-Assembly für die abhängige Typbibliothek erstellen, bevor Sie die verweisende primäre Interop-Assembly generieren können.

Eine abhängige primäre Interop-Assembly mit einer anderen Versionsnummer als die ursprüngliche Typbibliothek kann nicht ermittelt werden, wenn sie im aktuellen Verzeichnis installiert wird. Sie müssen die abhängige primäre Interop-Assembly entweder in der Windows-Registrierung registrieren oder mithilfe der Option /reference sicherstellen, dass Tlbimp.exe die abhängige DLL findet.

Sie können auch mehrere Versionen einer Typbibliothek einbinden. Anweisungen hierzu finden Sie unter Gewusst wie: Einschließen mehrerer Versionen von Typbibliotheken.

Beispiel

Im folgenden Beispiel wird die COM-Typbibliothek LibUtil.tlb importiert und die Assembly LibUtil.dll mithilfe der Schlüsseldatei CompanyA.snk mit einem starken Namen signiert. Da kein Namespacename angegeben wird, wird in diesem Beispiel der Standardnamespace LibUtil erstellt.

tlbimp LibUtil.tlb /primary /keyfile:CompanyA.snk /out:LibUtil.dll

Zum Zuweisen eines aussagekräftigen Namens (mit der Benennungsrichtlinie Herstellername.Bibliotheksname) werden im folgenden Beispiel der Dateiname der Standardassembly und der Namespacename überschrieben.

tlbimp LibUtil.tlb /primary /keyfile:CompanyA.snk /namespace:CompanyA.LibUtil /out:CompanyA.LibUtil.dll

Im folgenden Beispiel wird MyLib.tlb importiert, die auf CompanyA.LibUtil.dll verweist, und die Assembly CompanyB.MyLib.dll wird mithilfe der Schlüsseldatei CompanyB.snk mit einem starken Namen signiert. Der Namespace, CompanyB.MyLib, überschreibt den Standardnamespacenamen.

tlbimp MyLib.tlb /primary /keyfile:CompanyB.snk /namespace:CompanyB.MyLib /reference:CompanyA.LibUtil.dll /out:CompanyB.MyLib.dll

Siehe auch

Aufgaben

Gewusst wie: Einschließen mehrerer Versionen von Typbibliotheken

Gewusst wie: Manuelles Erstellen primärer Interop-Assemblys

Konzepte

Generieren primärer Interop-Assemblys

Erstellen primärer Interop-Assemblys