通知オブジェクトのレジストリ値の追加

NetTrans、NetClientまたは NetService コンポーネントには、次の 1 つ以上のアクションを実行する通知オブジェクトを含めることができます。

  • コンポーネントのユーザー インターフェイスを表示します

  • コンポーネントがバインディング プロセスを制御できるように、コンポーネントにバインディング イベントを通知します。

  • ソフトウェア コンポーネントを条件付きでインストールまたは削除します

注:NetClient コンポーネントは、Windows 8.1、Windows Server 2012 R2 以降では非推奨です。

通知オブジェクトの詳細については、「ネットワーク コンポーネントの通知オブジェクト」を参照してください。

注: Net コンポーネント (アダプター) は通知オブジェクトをサポートしていないため、これらのコンポーネントでは共同インストーラーを使用する必要があります。

共同インストーラーの詳細については、「共同インストーラーの作成」を参照してください。

コンポーネントに通知オブジェクトがある場合、そのコンポーネントの INF ファイルは、コンポーネントの Ndi キーに次の値を (add-registry-section を介して) 追加する必要があります。

ClsID
通知オブジェクトの GUID (グローバル一意識別子) を指定する REG_SZ値。 uuidgen.exe ユーティリティを実行して、この GUID を取得します。 このユーティリティの詳細については、Microsoft Windows SDK を参照してください。

ComponentDll
通知オブジェクト DLL へのパスを指定する REG_SZ 値。 DLL が Windows\System32 ディレクトリにない場合、ComponentDll は DLL への完全なパスを指定する必要があります。

Ndi キーに ClsID 値と ComponentDll 値を追加する add-registry-section の例を次に示します。

[MS_Protocol.ndi.reg]
HKR, Ndi, ClsID, 0, "GUID"
HKR, Ndi, ComponentDll, 0, "notifyobject.dll"

通知オブジェクトを持つコンポーネントの DDInstall セクションには、通知オブジェクト DLL を DestinationDirs セクションで指定された宛先ディレクトリにコピーする file-list-section を参照する CopyFiles ディレクティブも含まれている必要があります。 CopyFiles ディレクティブと DestinationDirs セクションの詳細については、「INF ファイルのセクションとディレクティブ」を参照してください。