CM_Get_Next_Log_Conf_Ex 函数 (cfgmgr32.h)

[从 Windows 8 和 Windows Server 2012 开始,此函数已弃用。 请改用 CM_Get_Next_Log_Conf 。]

CM_Get_Next_Log_Conf_Ex 函数获取与本地或远程计算机上的特定设备实例关联的下一个逻辑配置

语法

CMAPI CONFIGRET CM_Get_Next_Log_Conf_Ex(
  [out, optional] PLOG_CONF plcLogConf,
  [in]            LOG_CONF  lcLogConf,
  [in]            ULONG     ulFlags,
  [in, optional]  HMACHINE  hMachine
);

参数

[out, optional] plcLogConf

要接收逻辑配置句柄的位置的地址,或 NULL。 (请参阅以下 “备注 ”部分。

[in] lcLogConf

调用方提供的逻辑配置句柄。 以前必须通过调用以下函数之一来获取此句柄:

CM_Get_First_Log_Conf_Ex

CM_Get_Next_Log_Conf_Ex

[in] ulFlags

未使用,必须为零。

[in, optional] hMachine

调用方提供的计算机句柄,从上一次调用 CM_Connect_Machine获取。

注意从Windows 8和Windows Server 2012开始,不支持使用此函数访问远程计算机,因为此功能已被删除。
 

返回值

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

注意从 Windows 8 开始,CM_Get_Next_Log_Conf_Ex在 Wow64 方案中使用时返回CR_CALL_NOT_IMPLEMENTED。 若要请求有关本地计算机上的硬件资源的信息,必须使用硬件资源 API 实现应用程序的体系结构本机版本。 例如:AMD64 系统的 AMD64 应用程序。
 

注解

若要枚举与设备实例关联的逻辑配置, 请调用 CM_Get_First_Log_Conf_Ex 以获取第一个逻辑配置,然后重复调用 CM_Get_Next_Log_Conf_Ex ,直到返回CR_NO_MORE_LOG_CONF。

调用 CM_Add_Empty_Log_Conf_ExCM_Free_Log_Conf_Ex 可能会使从上一次调用 CM_Get_Next_Log_Conf_Ex获取的句柄失效。 因此,如果要在调用 CM_Add_Empty_Log_Conf_ExCM_Free_Log_Conf_Ex后获取逻辑配置,代码必须再次调用 CM_Get_First_Log_Conf_Ex ,并从第一次配置开始。

必须通过调用 CM_Free_Log_Conf_Handle 显式释放在 plcLogConf 中收到的句柄。

如果在将 plcLogConf 设置为 NULL 的情况下调用CM_Get_Next_Log_Conf_Ex,则不返回任何句柄。 这使你可以使用返回状态来确定是否存在配置,而无需随后释放句柄。

Windows 8 和 Windows Server 2012 及更高版本的操作系统中删除了访问远程计算机的功能,因此在这些版本的 Windows 上运行时,无法访问远程计算机。

要求

要求
最低受支持的客户端 在 Microsoft Windows 2000 及更高版本的 Windows 中可用。
目标平台 桌面
标头 cfgmgr32.h (包括 Cfgmgr32.h)
Library Cfgmgr32.lib
DLL Cfgmgr32.dll

另请参阅

CM_Get_Next_Log_Conf