TRegSvr.exe: Das Hilfsprogramm für die Typbibliotheksregistrierung
Nach oben zu Befehlszeilenhilfsprogramme - Index
TRegSvr.exe ist ein Tool zum Registrieren und zum Aufheben der Registrierung von COM/ActiveX-Servern und Typbibliotheken. Mit TRegSvr.exe kann auch nur eine Typbibliothek registriert werden. Dies ist sehr praktisch für Fälle, für die das Marshalling der Typbibliothek ausgeführt, aber das Objekt nicht unbedingt bei COM registriert werden soll. Wenn mit TRegSvr.exe nur eine Typbibliothek für den aktuellen Benutzer registriert wird, ist ein COM-Marshalling auch für einen Benutzer ohne Administratorrechte möglich. TRegSvr.exe wird mit Delphi ausgeliefert und befindet sich im Verzeichnis \bin der Produktinstallation.
TRegSvr kann als Alternative für die folgenden Aktionen zur Registrierung/Deregistrierung (siehe COM-Objekte registrieren) verwendet werden:
- Befehl "Registrieren" (Start > ActiveX-Server > Registrieren)
- Befehl "Für aktuellen Benutzer registrieren" (Start > ActiveX-Server > Für aktuellen Benutzer registrieren)
- Befehl "Registrierung aufheben" (Start > ActiveX-Server > Registrierung aufheben)
- Befehl
Regsvr32
(dokumentiert in der Begleithilfe für den Microsoft Windows Software Development Kit)
Hinweis: Als 32-Bit-Prozess kann die IDE keine 64-Bit-In-Process-/DLL-Server registrieren (32-Bit-Prozesse können keine 64-Bit-DLLs laden). Verwenden Sie zum Registrieren von 64-Bit-In-Process-Servern die 64-Bit-Version von TRegSvr.exe. Der Pfad lautet $(BDS)\bin64\TRegSvr.exe.
Inhaltsverzeichnis
Befehlszeilensyntax
>tregsvr <options> <filename>
Options sind die folgenden Befehlszeilenoptionen:
-u
(deregistrieren)-q
(stille Registrierung - keine Ausgabe)-c
(für aktuellen Benutzer registrieren/deregistrieren)-t
(Typbibliotheksregistrierung)-s
(Side-by-Side-Registrierung ohne vollständigen Pfad, zum Registrieren eines Servers, dessen Client/Anwender sich im selben Verzeichnis wie der Server befindet)
Filename ist der Name der Typbibliothek.
Befehlszeilenhilfe
Um die Hilfe für die Befehlszeile anzuzeigen, geben Sie Folgendes ein:
>tregsvr
Der folgende Hilfetext wird von TRegSvr.exe angezeigt:
Embarcadero Turbo Register Server -- COM Server Registration utility. Version 1.3 Copyright (c) 1997-2010 Embarcadero Technologies, Inc.
Syntax: TREGSVR [options] filename -u = Unregister server or type library -q = Quiet (silent) operation -c = Register or unregister for current user -t = Register type library (default for .TLB files) -s = "Side By Side" type library registration (do not use full path)
TRegSvr-Beispielprojekt
Sie können TRegSvr in dem Beispielprojekt "tregsvr" folgendermaßen compilieren:
- Wählen Sie Start | Programme | Embarcadero RAD Studio 10 Seattle | Beispiele, und navigieren Sie zum Ordner
Object Pascal\VCL\tregsvr
. - Doppelklicken Sie auf die Datei tregsvr.dproj.
- Klicken Sie in der Projektverwaltung mit der rechten Maustaste auf TRegSvr.exe, und wählen Sie aus dem Kontextmenü Compilieren. Die Ausgabe der Compilierung ist die Datei tregsvr.exe.
Der Quellcode der Beispielanwendung "tregsvr" wird mit den Beispielen in Ihrer Produktinstallation installiert. Sie können auch eine Kopie dieses Beispiels (und anderer Beispiele) aus dem öffentlichen Subversion-Repository unter http://sourceforge.net/p/radstudiodemos/code/HEAD/tree/branches/RADStudio_Seattle/Object%20Pascal/VCL/tregsvr auschecken.
Befehlszeilenbeispiele
Der folgende Befehl registriert "server.ocx" für alle Benutzer:
> tregsvr.exe c:\dev\myprojects\server.ocx
Dieser Befehl deregistriert den Server "server.ocx" (d.h. der Befehl hebt den vorherigen Befehl auf):
> tregsvr.exe -u c:\dev\myprojects\server.ocx
Der folgende Befehl registriert die Midas-Typbibliothek für den aktuellen Benutzer:
> tregsvr.exe -t -c midas.dll
TIPP: tregsvr.exe hat die nicht dokumentierte Option -v
, mit der Sie ermitteln können, ob ein Server registriert ist. Das Format lautet:
tregsvr -v [-c] ServerName
Bei dem angegebenen Namen kann es sich um einen Namensteil handeln. Der folgende Befehl zeigt beispielsweise alle Server an, deren Namen den String "msxml" enthalten:
> tregsvr -v msxml
Der vorige Befehl erzeugt auf einer Standard-Windows-Installation die folgende Ausgabe, die angibt, dass ein übereinstimmender Server gefunden wurde:
Embarcadero Turbo Register Server -- COM Server Registration utility. Version 1.3 Copyright (c) 1997-2010 Embarcadero Technologies, Inc. Searching for typelibrary entries matching "msxml4" in HKLM ------------------------------------------------------- (1) : C:\Windows\system32\msxml4.dll TLB : {F5078F18-C551-11D3-89B9-0000F81FE221} DESC : Microsoft XML, v4.0 (Version 4.0) CLSID: {88D969C0-F192-11D4-A65F-0040963251E5} CLSID: {88D969C1-F192-11D4-A65F-0040963251E5} CLSID: {88D969C4-F192-11D4-A65F-0040963251E5} CLSID: {88D969C5-F192-11D4-A65F-0040963251E5} CLSID: {88D969C6-F192-11D4-A65F-0040963251E5} PRGID: Msxml2.DOMDocument.4.0 PRGID: Msxml2.FreeThreadedDOMDocument.4.0 PRGID: Msxml2.DSOControl.4.0 PRGID: Msxml2.XMLHTTP.4.0 PRGID: Msxml2.ServerXMLHTTP.4.0 ------------------------------------------------------- Found 1 entries matching "msxml4" out of 561