次の方法で共有


クラスの共同インストーラーの登録

Note

このセクションで説明する機能は、ユニバーサル ドライバー パッケージまたはモバイル ドライバー パッケージではサポートされていません。 ユニバーサル INF ファイルの使用

特定のセットアップ クラスのすべてのデバイスの共同インストーラーを登録するには、HKLM\System\CurrentControlSet\Control\CoDeviceInstallers サブキーの下に次のようなレジストリ エントリを作成します。

{setup-class-GUID}: REG_MULTI_SZ : "XyzCoInstall.dll,XyzCoInstallEntryPoint\0\0"

CoDeviceInstallers キーが作成されますSetup-class-GUID は、デバイス セットアップ クラスの GUID を 指定します。 共同インストーラーが複数のデバイス クラスに適用される場合は、セットアップ クラスごとに個別の値エントリを作成します。

setup-class-GUID キーに以前に書き込まれた他の共同インストーラーは上書きしないでください。 キーを読み取り、共同インストーラー文字列をREG_MULTI_SZ一覧に追加し、キーをレジストリに書き戻します。

CoInstallEntryPoint省略した場合、既定値は CoDeviceInstall です。

共同インストーラー DLL もシステム ディレクトリにコピーする必要があります。

ファイルがコピーされ、レジストリ エントリが作成されると、関連するデバイスとサービスに対してクラス共同インストーラーを呼び出すことが可能になります。

レジストリ エントリを手動で作成してクラス共同インストーラーを登録するのではなく、次の例のような INF ファイルを使用して登録できます。

[DestinationDirs]
DefaultDestDir = 11    // DIRID_SYSTEM

[DefaultInstall]
CopyFiles = @classXcoinst.dll
AddReg = CoInstaller_AddReg

[CoInstaller_AddReg]
HKLM,System\CurrentControlSet\Control\CoDeviceInstallers, \
 {setup-class-GUID},0x00010008, "classXcoinst.dll,classXCoInstaller"
; above line uses the line continuation character ()

このサンプル INF は、ファイル classXcoinst.dllをシステム ディレクトリにコピーし、CoDeviceInstallers キーの下に setup-class-GUID クラスのエントリを作成します。 Xxx_AddReg セクションのエントリは、2 つのフラグを指定します。"00010000" フラグはエントリがREG_MULTI_SZであることを指定し、"00000008" フラグは、新しい値が既存の値に追加されることを指定します (新しい値がまだ文字列に存在しない場合)。

クラス共同インストーラーを登録する INF は、右クリック インストールまたは SetupInstallFromInfSection を呼び出すアプリケーションを使用してアクティブ化できます。