CM_Enumerate_Classes 函数 (cfgmgr32.h)
重复调用 CM_Enumerate_Classes 函数时,通过提供每个类的 GUID 来枚举本地计算机的已安装设备类。
语法
CMAPI CONFIGRET CM_Enumerate_Classes(
[in] ULONG ulClassIndex,
[out] LPGUID ClassGuid,
[in] ULONG ulFlags
);
参数
[in] ulClassIndex
计算机设备类列表中的调用方提供的索引。 有关详细信息,请参阅备注部分。
[out] ClassGuid
调用方提供的 GUID 结构的地址 (Microsoft Windows SDK) 中所述,用于接收设备类的 GUID。
[in] ulFlags
从 Windows 8 开始,调用方可以指定以下标志:
CM_ENUMERATE_CLASSES_INSTALLER
枚举设备安装类。
CM_ENUMERATE_CLASSES_INTERFACE
枚举设备接口类。
否则, 应设置为零。
返回值
如果操作成功,函数将返回CR_SUCCESS。 否则,它将返回 Cfgmgr32.h 中定义的CR_前缀错误代码之一。
注解
若要枚举本地计算机的设备类,请重复调用 CM_Enumerate_Classes ,从 ulClassIndex 值为零开始,并在每次后续调用中递增索引值,直到函数返回CR_NO_SUCH_VALUE。 某些索引值可能表示包含无效类数据的列表条目,在这种情况下,函数返回CR_INVALID_DATA。 可以忽略此返回值。
从此函数获取的类 GUID 可用作 设备安装函数的输入。
从Windows 8及更高版本的操作系统开始,调用方可以使用 ulFlags 成员来指定CM_Enumerate_Classes应返回的设备类。 在Windows 8之前,CM_Enumerate_Classes仅返回设备设置类。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Microsoft Windows 2000 及更高版本的 Windows 中可用。 |
目标平台 | 桌面 |
标头 | cfgmgr32.h (包括 Cfgmgr32.h) |
Library | Cfgmgr32.lib |
DLL | Cfgmgr32.dll |