Поделиться через


функция CM_Enumerate_Classes_Ex (cfgmgr32.h)

[Начиная с Windows 8 и Windows Server 2012 эта функция устарела. Вместо этого используйте CM_Enumerate_Classes .]

Функция CM_Enumerate_Classes_Ex при повторном вызове перечисляет классы устройств, установленные на локальном или удаленном компьютере, предоставляя GUID каждого класса.

Синтаксис

CMAPI CONFIGRET CM_Enumerate_Classes_Ex(
  [in]           ULONG    ulClassIndex,
  [out]          LPGUID   ClassGuid,
  [in]           ULONG    ulFlags,
  [in, optional] HMACHINE hMachine
);

Параметры

[in] ulClassIndex

Индекс, предоставленный вызывающим абонентом, в списке классов устройств компьютера. Дополнительные сведения см. в следующем разделе Примечаний .

[out] ClassGuid

Указанный вызывающим адрес структуры GUID (описан в Microsoft Windows SDK) для получения GUID класса устройства.

[in] ulFlags

Начиная с Windows 8 вызывающие абоненты могут задавать следующие флаги:

CM_ENUMERATE_CLASSES_INSTALLER

Перечисление классов настройки устройств.

CM_ENUMERATE_CLASSES_INTERFACE

Перечисление классов интерфейса устройства.

В противном случае значение должно быть равно нулю.

[in, optional] hMachine

Дескриптор компьютера, предоставленный вызывающим абонентом, полученный при предыдущем вызове CM_Connect_Machine.

Примечание Использование этой функции для доступа к удаленным компьютерам не поддерживается начиная с Windows 8 и Windows Server 2012, так как эта функция была удалена.
 

Возвращаемое значение

Если операция выполнена успешно, функция возвращает CR_SUCCESS. В противном случае возвращается один из кодов ошибок с CR_ префиксами, определенных в Cfgmgr32.h.

Комментарии

Чтобы перечислить классы устройств локального или удаленного компьютера, вызывайте CM_Enumerate_Classes_Ex несколько раз, начиная со значения индекса ulClassIndex , равного нулю, и увеличивая значение индекса при каждом последующем вызове, пока функция не вернет CR_NO_SUCH_VALUE. Некоторые значения индекса могут представлять записи списка, содержащие недопустимые данные класса. В этом случае функция возвращает CR_INVALID_DATA. Это возвращаемое значение можно игнорировать.

Идентификаторы GUID класса, полученные из этой функции, можно использовать в качестве входных данных для функций установки устройства.

Начиная с Windows 8 и более поздних версий операционных систем, вызывающие абоненты могут использовать член ulFlags, чтобы указать, какие классы устройств CM_Enumerate_Classes_Ex должны возвращать. До Windows 8 CM_Enumerate_Classes_Ex возвращали только классы настройки устройств.

Функции доступа к удаленным компьютерам были удалены в Windows 8, Windows Server 2012 и более поздних операционных системах, поэтому вы не сможете получить доступ к удаленным компьютерам при работе в этих версиях Windows.

Требования

Требование Значение
Минимальная версия клиента Доступно в Microsoft Windows 2000 и более поздних версиях Windows.
Целевая платформа Персональный компьютер
Верхняя часть cfgmgr32.h (включая Cfgmgr32.h)
Библиотека Cfgmgr32.lib
DLL Cfgmgr32.dll

См. также раздел

CM_Enumerate_Classes