次の方法で共有


SetupDiInstallClassExW 関数 (setupapi.h)

SetupDiInstallClassEx 関数は、クラス インストーラーまたはインターフェイス クラスをインストールします。

構文

WINSETUPAPI BOOL SetupDiInstallClassExW(
  [in, optional] HWND       hwndParent,
  [in, optional] PCWSTR     InfFileName,
  [in]           DWORD      Flags,
  [in, optional] HSPFILEQ   FileQueue,
  [in, optional] const GUID *InterfaceClassGuid,
                 PVOID      Reserved1,
                 PVOID      Reserved2
);

パラメーター

[in, optional] hwndParent

このクラスのインストールに使用されるすべてのユーザー インターフェイスの親ウィンドウへのハンドル。 このパラメーターは省略可能であり、 NULL にすることができます。

[in, optional] InfFileName

INF ファイルの名前を含む NULL で終わる文字列へのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。 この関数を使用してクラス インストーラーをインストールする場合、INF ファイルには INF ClassInstall32 セクション が含まれており、このパラメーターを NULL にすることはできません。

この関数を使用してインターフェイス クラスをインストールする場合、INF ファイルには INF InterfaceInstall32 セクションが含まれます。

[in] Flags

インストール プロセスを制御する DWORD 型の値。 フラグ には、次の値の 0 またはビットごとの OR を指定できます。

DI_NOVCP

FileQueue が指定されている場合は、このフラグを設定します。

DI_NOVCPは 、SetupInstallFromInfSection 関数に対して、独自のキューを作成せず、代わりに呼び出し元が指定したキューを使用するように指示します。

このフラグが設定されている場合、ファイルはキューに入っているだけでコピーされません。

SetupInstallFromInfSection 関数の詳細については、Microsoft Windows SDKドキュメントを参照してください。

DI_NOBROWSE

コピー操作で指定したファイルが見つからない場合に参照を無効にするには、このフラグを設定します。 呼び出し元がファイル キューを指定した場合、このフラグは無視されます。

DI_FORCECOPY

ユーザーのコンピューターに既に存在する場合でも、常にファイルをコピーするようにこのフラグを設定します。 呼び出し元がファイル キューを指定した場合、このフラグは無視されます。

DI_QUIETINSTALL

絶対に必要でない限り、ユーザー インターフェイスを抑制するには、このフラグを設定します。 たとえば、進行状況ダイアログは表示しません。 呼び出し元がファイル キューを指定した場合、このフラグは無視されます。

[in, optional] FileQueue

DI_NOVCP フラグが設定されている場合、このパラメーターは、ファイル操作をキューに入れる必要があるがコミットしないファイル キューへのハンドルを提供します。

[in, optional] InterfaceClassGuid

インストールするインターフェイス クラスを識別する GUID へのポインター。 このパラメーターは省略可能であり、 NULL にすることができます。 このパラメーターを指定した場合、この関数は GUID で表されるインターフェイス クラスをインストールするために使用されます。 このパラメーターが NULL の場合、この関数はクラス インストーラーのインストールに使用されます。

Reserved1

予約済み。 ゼロを指定してください。

Reserved2

予約済み。 ゼロを指定してください。

戻り値

SetupDiInstallClassEx は成功した場合 に TRUE を 返します。 それ以外の場合は FALSE を 返し、ログに記録されたエラーを GetLastError の呼び出しで取得できます。

解説

この関数の呼び出し元は、Administrators グループのメンバーである必要があります。

SetupDiInstallClassEx は通常、新しい デバイス セットアップ クラス または新しいデバイス インターフェイス クラスをインストールするために クラス インストーラーによって呼び出されます。

メモ また、 SetupDiInstallDeviceInterfaces を 呼び出してデバイスのデバイス インターフェイスをインストールすることで、インターフェイス クラスを自動的にインストールすることもできます。
 

注意

setupapi.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SetupDiInstallClassEx を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

   
サポートされている最小のクライアント Microsoft Windows 2000 以降のバージョンの Windows で使用できます。
対象プラットフォーム デスクトップ
Header setupapi.h (Setupapi.h を含む)
Library Setupapi.lib

関連項目

SetupDiCallClassInstaller

SetupDiInstallDeviceInterfaces