Assembly Registration-Tool (Regasm.exe)

Aktualisiert: November 2007

Das Assembly Registration-Tool liest die Metadaten in einer Assembly und fügt die erforderlichen Einträge der Registrierung hinzu. COM-Clients sind so in der Lage, transparent .NET Framework-Klassen zu erstellen. Sobald eine Klasse registriert ist, kann diese von jedem COM-Client wie eine COM-Klasse verwendet werden. Die Klasse wird nur einmal beim Installieren der Assembly registriert. COM kann keine Instanzen von Klassen in der Assembly erstellen, bevor diese nicht registriert wurden.

regasm assemblyFile [options]

Parameter

Parameter

Beschreibung

assemblyFile

Die in COM zu registrierende Assembly.

Option

Beschreibung

/codebase

Erstellt einen CodeBase-Eintrag in der Registrierung. Durch den CodeBase-Eintrag wird der Dateipfad für eine Assembly festgelegt, die nicht im globalen Assemblycache installiert ist. Die Option sollte nicht angegeben werden, wenn Sie die zu registrierende Assembly nachfolgend im globalen Assemblycache installieren. Bei dem mit der /codebase-Option festgelegten assemblyFile-Argument muss es sich um eine Assembly mit starkem Namen handeln.

/registered

Gibt an, dass dieses Tool nur auf Typbibliotheken verweist, die bereits registriert wurden.

/asmpath:directory

Gibt ein Verzeichnis an, das Assemblyverweise enthält. Muss mit der Option /regfile verwendet werden.

/nologo

Unterdrückt die Anzeige des Startbanners von Microsoft.

/regfile [:regFile]

Generiert die angegebene REG-Datei mit den erforderlichen Registrierungseinträgen für die Assembly. Bei Angabe dieser Option wird die Registrierung nicht geändert. Sie können diese Option nicht zusammen mit der Option /u oder der Option /tlb verwenden.

/silent oder /s

Unterdrückt die Anzeige von Erfolgsmeldungen.

/tlb [:typeLibFile]

Generiert eine Typbibliothek aus der angegebenen Assembly, die Definitionen der in der Assembly definierten verfügbaren Typen enthält.

/unregister oder /u

Hebt die Registrierung der in assemblyFile gefundenen erstellbaren Klassen auf. Wenn Sie diese Option nicht angeben, registriert Regasm.exe die erstellbaren Klassen aus der Assembly.

/verbose

Gibt den ausführlichen Modus an. Es wird eine Liste aller Assemblys angezeigt, auf die verwiesen wird und für die eine Typbibliothek generiert werden muss, wenn zusätzlich die Option /tlb angegeben wurde.

/? oder /help

Zeigt die Befehlssyntax und Optionen für das Tool an.

Tipp

Bei den Befehlszeilenoptionen für Regasm.exe wird die Groß- und Kleinschreibung nicht beachtet. Geben Sie einfach die gewünschte Option oder das entsprechende Kürzel an, um diese eindeutig zu kennzeichnen. Beispiel: /n entspricht /nologo und /t:outfile.tlb entspricht /tlb:outfile.tlb.

Hinweise

Sie können mit der Option /regfile eine REG-Datei mit den Registrierungseinträgen generieren, anstatt die Änderungen direkt in der Registrierung vorzunehmen. Sie können die Registrierung auf einem Computer aktualisieren, indem Sie die REG-Datei mit dem Registrierungs-Editor (Regedit.exe) importieren. Beachten Sie, dass die REG-Datei keine Aktualisierungen der Registrierung enthält, die durch benutzerdefinierte Registrierungsfunktionen vorgenommen werden können. Beachten Sie, dass die Option /regfile nur Registrierungseinträge für verwaltete Klassen ausgibt. Diese Option gibt keine Einträge für TypeLibIDs oder InterfaceIDs aus.

Wenn Sie die Option /tlb angeben, generiert und registriert Regasm.exe eine Typbibliothek, die die in der Assembly gefundenen Typen beschreibt. Regasm.exe platziert die generierten Typbibliotheken im aktuellen Arbeitsverzeichnis oder dem für die Ausgabedatei angegebenen Verzeichnis. Beim Generieren einer Typbibliothek für eine Assembly, in der auf andere Assemblys verwiesen wird, werden ggf. mehrere Typbibliotheken gleichzeitig generiert. Sie können die Typbibliothek verwenden, um Typinformationen für Entwicklungstools wie Visual Studio 2005 bereitzustellen. Die Option /tlb sollte nicht verwendet werden, falls die zu registrierende Assembly mit dem Type Library Importer-Tool (Tlbimp.exe) erstellt wurde. Sie können keine Typbibliothek aus einer Assembly exportieren, die aus einer Typbibliothek importiert wurde. Das Verwenden der Option /tlb entspricht dem Verwenden des Type Library Exporter-Tools (Tlbexp.exe) und von Regasm.exe, wobei Tlbexp.exe die erstellte Typbibliothek jedoch nicht registriert. Wenn Sie die Option /tlb zum Registrieren einer Typbibliothek verwenden, können Sie die Option /tlb zusammen mit der Option /unregister verwenden, um die Registrierung der Typbibliothek aufzuheben. Durch die gemeinsame Verwendung der beiden Optionen wird die Registrierung von Typbibliothek und Schnittstelleneinträgen aufgehoben, wodurch die Registrierung in beachtlichem Umfang bereinigt werden kann.

Wenn Sie eine Assembly für die Verwendung mit COM registrieren, fügt Regasm.exe der Registrierung des lokalen Computers Einträge hinzu. Genauer gesagt, es werden versionsabhängige Registrierungsschlüssel erstellt, die die parallele Ausführung mehrerer Versionen derselben Assembly auf einem Computer zulassen. Bei der erstmaligen Registrierung einer Assembly wird ein Schlüssel auf oberster Ebene für die Assembly und ein eindeutiger Unterschlüssel für die spezielle Version erstellt. Bei jedem Registrieren einer neuen Version der Assembly erstellt Regasm.exe einen Unterschlüssel für die neue Version.

Als Beispiel dient ein Szenario, in dem Sie die verwaltete Komponente myComp.dll, Version 1.0.0.0, für die Verwendung mit COM registrieren. Anschließend wird myComp.dll, Version 2.0.0.0, registriert. Sie bestimmen, dass alle COM-Clientanwendungen auf dem verwendeten Computer myComp.dll, Version 2.0.0.0, verwenden. Außerdem heben Sie die Registrierung von myComp.dll, Version 1.0.0.0, auf. Dieses Registrierungsschema ermöglicht Ihnen die Aufhebung der Registrierung von myComp.dll, Version 1.0.0.0, da nur der Unterschlüssel für die Version 1.0.0.0 entfernt wird.

Nach dem Registrieren einer Assembly mit Regasm.exe können Sie diese im globalen Assemblycache installieren, sodass diese von jedem COM-Client aktiviert werden kann. Wenn die Assembly nur von einer einzelnen Anwendung aktiviert wird, können Sie diese im Verzeichnis der Anwendung platzieren.

Beispiele

Der folgende Befehl registriert alle in myTest.dll enthaltenen öffentlichen Klassen.

regasm myTest.dll

Der folgende Befehl generiert die Datei myTest.reg, die alle erforderlichen Registrierungseinträge enthält. Bei diesem Befehl wird die Registrierung nicht aktualisiert.

regasm myTest.dll /regfile:myTest.reg

Der folgende Befehl registriert alle in myTest.dll enthaltenen öffentlichen Klassen und generiert und registriert die Typbibliothek myTest.tlb, die Definitionen aller in myTest.dll definierten öffentlichen Typen enthält.

regasm myTest.dll /tlb:myTest.tlb

Siehe auch

Konzepte

Registrieren von Assemblys mit COM

Referenz

.NET Framework-Tools

Type Library Exporter-Tool (Tlbexp.exe)

Type Library Importer-Tool (Tlbimp.exe)

SDK-Eingabeaufforderung