SP_DEVINFO_DATA構造体 (setupapi.h)

SP_DEVINFO_DATA構造体は、デバイス情報セットのメンバーであるデバイス インスタンスを定義します。

構文

typedef struct _SP_DEVINFO_DATA {
  DWORD     cbSize;
  GUID      ClassGuid;
  DWORD     DevInst;
  ULONG_PTR Reserved;
} SP_DEVINFO_DATA, *PSP_DEVINFO_DATA;

メンバー

cbSize

SP_DEVINFO_DATA構造体のサイズ (バイト単位)。 詳細については、「解説」を参照してください。

ClassGuid

デバイスのセットアップ クラスの GUID。

DevInst

デバイス インスタンスへの不透明なハンドル ( devnode のハンドルとも呼ばれます)。

SetupDiXxx 関数などの一部の関数は、SP_DEVINFO_DATA構造全体を入力として受け取り、デバイス情報セット内のデバイスを識別します。 CM_Get_DevNode_Statusのような CM_Xxx 関数などの他の関数は、この DevInst ハンドルを入力として受け取ります。

Reserved

予約済み。 内部使用専用です。

解説

SP_DEVINFO_DATA構造体は、デバイス情報セット内のデバイスを識別します。 たとえば、Windows がクラス インストーラーと共同インストーラーに DIF_INSTALLDEVICE 要求を送信すると、デバイス情報セットへのハンドルと、特定のデバイスを指定するSP_DEVINFO_DATAへのポインターが含まれます。 この構造体は、DIF 要求に加えて、一部の SetupDiXxx 関数でも使用されます。

パラメーターとしてSP_DEVINFO_DATA構造体を受け取る SetupDiXxx 関数は、指定された構造体の cbSize メンバーが構造体のサイズ (バイト単位) と等しいことを確認します。 cbSize メンバーが入力パラメーターに対して正しく設定されていない場合、関数は失敗し、ERROR_INVALID_PARAMETERのエラー コードを設定します。 cbSize メンバーが出力パラメーターに正しく設定されていない場合、関数は失敗し、ERROR_INVALID_USER_BUFFERのエラー コードを設定します。

要件

   
Header setupapi.h (Setupapi.h を含む)

関連項目

SP_DEVINFO_LIST_DETAIL_DATA