次の方法で共有


Reg2inf

ドライバー パッケージINFレジストリ変換ツール (reg2inf.exe) ツールは、レジストリ キーとその値、または DllRegisterServer ルーチンを実装する COM .dll を、ドライバー パッケージ INF ファイルに含める一連の INF AddReg ディレクティブに変換します。 このツールは、INF ファイルをユニバーサルにするために、既存の INF RegisterDlls ディレクティブを INF AddReg ディレクティブに変換する場合にとても便利です。 ユニバーサル INF ファイルの詳細については、「ユニバーサル INF ファイルの使用」をご参照ください。

Windows 10 バージョン 1709 以降、このツールは WDK 10 インストールの一部として付属しています。 たとえば c:\Program Files(x86)\Windows Kits\10\tools\ のように、WDK 10 のインストール時に \tool のサブディレクトリで見つけることができます。

Reg2inf は COM 登録を生成しようとしますが、COM 登録が提供する完全なレジストリ状態をキャプチャしない可能性があります。 これまでと同様に、ツールの出力の完全性と正確性を調べて、結果をテストする必要があります。

コマンド ラインからの Reg2inf の実行

このセクションでは、Reg2inf のコマンド ライン オプションの一覧を示します。

USAGE: reg2inf.exe [/key <path> | /dll <filename>] [/targetkey <path>]

/key <registry key path>
    Process a specific registry key, e.g.: reg2inf /key HKEY_LOCAL_MACHINE\SOFTWARE\Fabrikam
/dll <module filename>
    Process a COM DLL module that implements DllRegisterServer entrypoint, typically called by regsvr32 or legacy INF RegisterDlls directive in order to register COM class under HKEY_CLASSES_ROOT, e.g.: reg2inf /dll %SystemRoot%\System32\fabkobj.dll
/targetkey <registry key path>
    Remap target registry key to be under a different base key path, e.g.: reg2inf /key HKLM\SYSTEM\Temp /targetkey HKR\Parameters

Reg2inf では、完全なパスの長さが 259 文字を超えないようにする必要があります。

INF ファイルへの COM コンポーネントの登録

次のスニペットは、Reg2inf によって生成される INF AddReg 構文を使用して単純な COM クラスを登録する方法を示しています。

[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"