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


Функция SetupDiBuildClassInfoList (setupapi.h)

Функция SetupDiBuildClassInfoList возвращает список идентификаторов GUID класса установки, определяющих классы, установленные на локальном компьютере.

Синтаксис

WINSETUPAPI BOOL SetupDiBuildClassInfoList(
  [in]            DWORD  Flags,
  [out, optional] LPGUID ClassGuidList,
  [in]            DWORD  ClassGuidListSize,
  [out]           PDWORD RequiredSize
);

Параметры

[in] Flags

Флаги, используемые для управления исключением классов из списка. Если флаги не указаны, все классы установки включаются в список. Может быть сочетанием следующих значений:

DIBCI_NOINSTALLCLASS

Исключите класс, если у него есть запись значения NoInstallClass в разделе реестра.

DIBCI_NODISPLAYCLASS

Исключите класс, если в его разделе реестра есть запись значения NoDisplayClass .

[out, optional] ClassGuidList

Указатель на массив с типом GUID, который получает список guid-идентификаторов класса установки. Этот указатель является необязательным и может иметь значение NULL.

[in] ClassGuidListSize

Число идентификаторов GUID в массиве, на которое указывает параметр ClassGuildList . Если ClassGuidList имеет значение NULL, classGuidSize должен быть равен нулю.

[out] RequiredSize

Указатель на переменную типа DWORD, которая получает количество возвращаемых идентификаторов GUID (если это число меньше или равно размеру массива, на который указывает параметр ClassGuidList ).

Если это число больше, чем размер массива ClassGuidList , оно указывает, насколько должен быть массив ClassGuidList , чтобы содержать все GUID класса.

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

Функция возвращает значение TRUE в случае успешного выполнения. В противном случае возвращается значение FALSE , а зарегистрированная ошибка может быть получена путем вызова Метода GetLastError.

Комментарии

Чтобы получить количество классов, установленных на локальном компьютере, вызовите SetupDiBuildClassInfoList с классом ClassGuidList со значением NULL , а classGuidSize — равным нулю. В ответ на такой вызов функция возвращает количество классов в *RequiredSize.

SetupDiBuildClassInfoList не возвращает GUID класса для класса, если в разделе реестра класса существует запись значения NoUseClass .

Чтобы получить список GUID класса установки, установленных в удаленной системе, используйте SetupDiBuildClassInfoListEx.

Требования

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

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

SetupDiBuildClassInfoListEx

SetupDiGetClassDescription

SetupDiGetINFClass