Reg2inf
Das INF-Registrierungskonvertierungstool (reg2inf.exe
) des Treiberpakets konvertiert einen Registrierungsschlüssel und seine Werte oder eine COM-.dll die Implementierung einer DllRegisterServer-Routine in eine Reihe von INF-AddReg-Direktiven oder INF-DDInstall.COM-Abschnitt für in proc-COM-Server, um in eine INF-Datei des Treiberpakets einzuschließen. Dieses Tool eignet sich besonders zum Konvertieren vorhandener INF-RegisterDlls-Anweisungen in INF-AddReg-Anweisungen oder INF-DDInstall.COM Abschnitten, um eine INF-Datei universell zu machen. Weitere Informationen zu universellen INF-Dateien finden Sie unter Verwenden einer universellen INF-Datei.
Ab Windows 10, Version 1709, wird das Tool als Teil der WDK 10-Installation ausgeliefert. Sie finden sie im \tools
Unterverzeichnis Ihrer WDK 10-Installation, beispielsweise C:\Program Files(x86)\Windows Kits\10\tools\
.
Während Reg2INF-versucht, eine COM-Registrierung zu generieren, wird möglicherweise nicht der vollständige Registrierungsstatus erfasst, den die COM-Registrierung bereitstellt. Wie immer sollten Sie die Ausgabe des Tools auf Vollständigkeit und Richtigkeit prüfen und die Ergebnisse testen.
Ausführen von Reg2INF-über die Befehlszeile
In diesem Abschnitt werden die Befehlszeilenoptionen für Reg2INF-aufgeführt.
reg2inf.exe [/downlevel] [/key <path> | /dll <filename>] [/targetkey <path>]
/downlevel
Ignoriert den DDInstall.COM-Syntaxstil und druckt die Ausgabe nur über AddReg-Anweisungen. Diese Option sollte nur für INF-Abschnitte verwendet werden, die auf Betriebssystemversionen abzielen, die älter als Windows 11, Version 24H2 sind.
/key <registry key path>
Verarbeiten eines bestimmten Registrierungsschlüssels, wie reg2INF-/key HKEY_LOCAL_MACHINE\SOFTWARE\Fabrikam
/dll <module filename>
Verarbeiten eines COM-DLL-Moduls, das den DllRegisterServer-Eintragspunkt implementiert, der in der Regel von regsvr32.exe oder einer älteren INF-RegisterDlls-Anweisung aufgerufen wird, um eine COM-Klasse unter HKEY_CLASSES_ROOT zu registrieren, z. B.: reg2INF-/dll %SystemRoot%\System32\fabkobj.dll
/targetkey <registry key path>
Neuzuordnung eines Zielregistrierungsschlüssels unter einem anderen Basisschlüsselpfad, z. B. reg2INF-/key HKLM\SYSTEM\Temp /targetkey HKR\Parameters
Hinweis
Reg2INF-erfordert, dass die vollständige Pfadlänge 259 Zeichen nicht überschreiten darf.
Registrieren einer COM-Komponente in einer INF-Datei
Der folgende Codeausschnitt zeigt, wie Sie eine einfache COM-Klasse mithilfe der INF-DDInstall.COM-Syntax registrieren, wie sie von Reg2INF-ohne den /downlevel
-Parameter erzeugt wird:
[SimpleCom.COM]
AddComServer = COM_Server,,SimpleCom_Install
[SimpleCom_Install]
ServerType = 1
ServerBinary = %13%\comobj.dll
AddComClass = Sample Class,{92FCF37F-F6C7-4F8A-AA09-1A14BA118084},,SimpleCom_Class_Install
[SimpleCom_Class_Install]
ThreadingModel = Both
Der folgende Codeausschnitt zeigt, wie Sie eine einfache COM-Klasse mithilfe der INF-AddReg-Syntax registrieren, wie sie von Reg2inf mit dem /downlevel
-Parameter erzeugt wird:
[ComClass_AddReg]
HKCR,CLSID\{92FCF37F-F6C7-4F8A-AA09-1A14BA118084},,,"Sample Class"
HKCR,CLSID\{92FCF37F-F6C7-4F8A-AA09-1A14BA118084}\InprocServer32,,%REG_EXPAND_SZ%,"%13%\comobj.dll"
HKCR,CLSID\{92FCF37F-F6C7-4F8A-AA09-1A14BA118084}\InprocServer32,ThreadingModel,,"Both"