Функция TdhEnumerateProviders (tdh.h)
Извлекает список всех поставщиков, зарегистрированных на компьютере.
Синтаксис
TDHSTATUS TdhEnumerateProviders(
[out] PPROVIDER_ENUMERATION_INFO pBuffer,
[in, out] ULONG *pBufferSize
);
Параметры
[out] pBuffer
Массив поставщиков, которые публично определяют свои события на компьютере. Дополнительные сведения см. в разделе структура PROVIDER_ENUMERATION_INFO .
[in, out] pBufferSize
Размер буфера pBuffer в байтах. Если функция выполняется успешно, этот параметр получает размер используемого буфера. Если буфер слишком мал, функция возвращает ERROR_INSUFFICIENT_BUFFER и задает для этого параметра требуемый размер буфера. Если размер буфера равен нулю на входных данных, данные в буфере не возвращаются, и этот параметр получает требуемый размер буфера.
Возвращаемое значение
В случае успешного выполнения возвращает ERROR_SUCCESS. В противном случае эта функция возвращает один из следующих кодов возврата в дополнение к другим.
Код возврата | Описание |
---|---|
ERROR_INSUFFICIENT_BUFFER | Размер буфера pBuffer слишком мал. Используйте требуемый размер буфера, заданный в pBufferSize , чтобы выделить новый буфер. |
ERROR_INVALID_PARAMETER | Один или несколько параметров являются недопустимыми. |
Комментарии
Вызовите функцию TdhEnumerateProvidersForDecodingSource , чтобы получить список поставщиков, которые зарегистрировали MOF-файл класса или манифеста на компьютере.
Так как количество зарегистрированных поставщиков событий может меняться между вызовами этой функции, следует поместить эту функцию в цикл, который цикличен до тех пор, пока возвращаемое значение не будет ERROR_INSUFFICIENT_BUFFER.
Примеры
Пример перечисления поставщиков см. в разделе Перечисление поставщиков.
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | tdh.h |
Библиотека | Tdh.lib |
DLL | Tdh.dll |