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)
Library Cfgmgr32.lib
DLL CfgMgr32.dll

另请参阅

CM_Get_Child

CM_Locate_DevNode_Ex