CM_Locate_DevNode_ExW関数 (cfgmgr32.h)
[Windows 8 および Windows Server 2012 以降、この関数は非推奨となりました。 代わりに CM_Locate_DevNode を使用してください。]
CM_Locate_DevNode_Ex関数は、ローカル コンピューターまたはリモート コンピューターで、指定したデバイス インスタンス ID に関連付けられているデバイス ノードへのデバイス インスタンス ハンドルを取得します。
構文
CMAPI CONFIGRET CM_Locate_DevNode_ExW(
[out] PDEVINST pdnDevInst,
[in, optional] DEVINSTID_W pDeviceID,
[in] ULONG ulFlags,
[in, optional] HMACHINE hMachine
);
パラメーター
[out] pdnDevInst
この関数が取得するデバイス インスタンス ハンドルへのポインター。 取得したハンドルは、 hMachine によって指定されたマシン ハンドルにバインドされます。
[in, optional] pDeviceID
デバイス インスタンス ID を表す NULL で終わる文字列へのポインター。 この値が NULL の場合、または長さ 0 の文字列を指している場合、関数はデバイス ツリーのルートにあるデバイスにデバイス インスタンス ハンドルを提供 します。
[in] ulFlags
呼び出し元がデバイス インスタンス識別子を提供する場合に適用される次のいずれかのフラグ値を提供する ULONG 型の変数。
CM_LOCATE_DEVNODE_NORMAL
関数は、デバイスが現在デバイス ツリーで構成されている場合にのみ、指定されたデバイスのデバイス インスタンス ハンドルを取得します。
CM_LOCATE_DEVNODE_PHANTOM
この関数は、デバイスが現在デバイス ツリーで構成されているか、デバイス ツリーで現在構成されていないデバイスである場合に、指定された デバイスのデバイス インスタンス ハンドルを取得します。
CM_LOCATE_DEVNODE_CANCELREMOVE
この関数は、デバイスが現在デバイス ツリーで構成されている場合、またはデバイス ツリーに対して削除中の場合に、指定されたデバイスのデバイス インスタンス ハンドルを取得します。 デバイスが削除中の場合、関数はデバイスの削除を取り消します。
CM_LOCATE_DEVNODE_NOVALIDATION
使用されていません。
[in, optional] hMachine
CM_Connect_Machineの呼び出しから取得されたマシン ハンドル、またはデバイス情報セットがバインドされているマシン ハンドル。 デバイス情報セットのマシン ハンドルは、デバイス情報セットのSP_DEVINFO_LIST_DETAIL_DATA構造体の RemoteMachineHandle メンバーから取得されます。 SetupDiGetDeviceInfoListDetail を呼び出して、SP_DEVINFO_LIST_DETAIL_DATA構造体を取得します。
戻り値
操作が成功した場合、 CM_Locate_DevNode はCR_SUCCESSを返します。 それ以外の場合、関数は Cfgmgr32.h で定義されているCR_プレフィックス付きのエラー コードのいずれかを返します。
解説
ローカル コンピューターまたはリモート コンピューターにバインドされているデバイス インスタンス ハンドルの使用については、「 CM_Get_Child_Ex」を参照してください。
リモート マシンにアクセスするための機能は、Windows 8 および Windows Server 2012 以降のオペレーティング システムで削除されているため、これらのバージョンの Windows で実行している場合はリモート マシンにアクセスできません。
要件
サポートされている最小のクライアント | Microsoft Windows 2000 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | デスクトップ |
Header | cfgmgr32.h (Cfgmgr32.h を含む) |
Library | Cfgmgr32.lib |