CM_Locate_DevNodeA函数 (cfgmgr32.h)

CM_Locate_DevNode 函数获取与本地计算机上的指定 设备实例 ID 关联的设备节点的设备实例句柄。

语法

CMAPI CONFIGRET CM_Locate_DevNodeA(
  [out]          PDEVINST    pdnDevInst,
  [in, optional] DEVINSTID_A pDeviceID,
  [in]           ULONG       ulFlags
);

参数

[out] pdnDevInst

指向 CM_Locate_DevNode 检索的设备实例句柄的指针。 检索的句柄绑定到本地计算机。

[in, optional] pDeviceID

指向表示 设备实例 ID的 NULL 终止字符串的指针。 如果此值 NULL,或者如果它指向零长度字符串,则该函数将检索设备实例句柄设备树根处的设备。

[in] ulFlags

ULONG 类型的变量,它提供以下标志值之一,这些标志值在调用方提供设备实例标识符时适用:

CM_LOCATE_DEVNODE_NORMAL

仅当设备当前在设备树中配置设备时,该函数才会检索指定设备的设备实例句柄。

CM_LOCATE_DEVNODE_PHANTOM

如果设备当前在设备树中配置设备,或者设备是当前未在设备树中配置的 非代表设备,该函数将检索指定设备的设备实例句柄。

CM_LOCATE_DEVNODE_CANCELREMOVE

如果设备当前在设备树或从设备树中删除设备的过程中配置了设备,该函数将检索指定设备的设备实例句柄。 如果设备正在删除过程中,该函数将取消删除设备。

CM_LOCATE_DEVNODE_NOVALIDATION

未使用。

返回值

如果操作成功,CM_Locate_DevNode 返回CR_SUCCESS。 否则,该函数将返回 Cfgmgr32.h中定义的 CR_Xxx 错误代码之一。

言论

有关使用绑定到本地计算机的设备实例句柄的信息,请参阅 CM_Get_Child

注意

cfgmgr32.h 标头将CM_Locate_DevNode定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Microsoft Windows 2000 及更高版本的 Windows 中可用。
目标平台 普遍
标头 cfgmgr32.h (包括 Cfgmgr32.h)
Cfgmgr32.lib
DLL CfgMgr32.dll

另请参阅

CM_Get_Child

CM_Locate_DevNode_Ex