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


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

[Эта функция доступна для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. SetupAPI больше не следует использовать для установки приложений. Вместо этого используйте установщик Windows для разработки установщиков приложений. SetupAPI по-прежнему используется для установки драйверов устройств.]

Функция SetupGetInfFileList возвращает список INF-файлов, расположенных в каталоге, указанном вызывающим объектом, в буфер, предоставленный вызовом.

Синтаксис

WINSETUPAPI BOOL SetupGetInfFileListA(
  [in]      PCSTR  DirectoryPath,
  [in]      DWORD  InfStyle,
  [in, out] PSTR   ReturnBuffer,
  [in]      DWORD  ReturnBufferSize,
  [in, out] PDWORD RequiredSize
);

Параметры

[in] DirectoryPath

Необязательный указатель на строку, завершающуюся значением NULL, содержащую путь к каталогу, в котором выполняется поиск. Если это значение равно NULL, используется каталог %windir%\inf.

[in] InfStyle

Тип искомого INF-файла. Может быть сочетанием следующих флагов.

INF_STYLE_OLDNT

Устаревший формат INF-файла.

INF_STYLE_WIN4

Формат INF-файла Windows.

[in, out] ReturnBuffer

Если значение не равно NULL, указывает на буфер, в котором эта функция возвращает список всех INF-файлов требуемых стилей, найденных в указанном подкаталоге. Имена файлов заканчиваются нулевым значением, а в конце списка — дополнительным значением NULL . Строка, завершающаяся значением NULL, не должна превышать размер буфера назначения. Вы можете вызвать функцию один раз, чтобы получить требуемый размер буфера, выделить необходимую память, а затем вызвать функцию второй раз, чтобы получить данные. С помощью этого метода можно избежать ошибок из-за недостаточного размера буфера. Имена файлов не включают путь. См. раздел «Примечания».

[in] ReturnBufferSize

Размер буфера, на который указывает параметр ReturnBuffer , в символах. Сюда входит признак конца null . Если значение ReturnBuffer не указано, returnBufferSize игнорируется.

[in, out] RequiredSize

Если значение не равно NULL, указывает на переменную, в которой эта функция возвращает требуемый размер буфера, на который указывает параметр ReturnBuffer , в символах. Сюда входит признак конца null . Если параметр ReturnBuffer указан и требуемый размер больше , чем ReturnBufferSize, функция завершается ошибкой и вызов GetLastError возвращает ERROR_INSUFFICIENT_BUFFER.

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

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

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Если эта функция вызывается с ReturnBuffer со значением NULL и ReturnBufferSize , равным нулю, функция помещает размер буфера, необходимый для хранения указанных данных, в переменную, на которую указывает RequiredSize. Если функция завершается успешно, возвращаемое значение будет ненулевым. В противном случае возвращаемое значение равно нулю, а расширенные сведения об ошибке можно получить, вызвав Метод GetLastError.

Если эта функция возвращает несколько стилей INF-файлов, стиль конкретного INF-файла можно определить, вызвав функцию SetupGetInfInformation.

Примечание

Заголовок setupapi.h определяет SetupGetInfFileList в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Целевая платформа Windows
Header setupapi.h
Библиотека Setupapi.lib
DLL Setupapi.dll

См. также

Функции

Обзор

SetupGetInfInformation