функция 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. В противном случае возвращается один из кодов ошибок с префиксом CR_, определенных в Cfgmgr32.h.
Комментарии
Чтобы перечислить классы устройств локального компьютера, вызовите 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) |
Библиотека | Cfgmgr32.lib |
DLL | Cfgmgr32.dll |