Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Функция setupGetInfPublishedName извлекает полное имя файла (путь к каталогу и имя файла) INF- файла в каталоге INF-файла системы, соответствующего указанному INF-файлу в хранилище драйверов или указанному INF-файлу в каталоге INF-файла системы.
Синтаксис
WINSETUPAPI BOOL SetupGetInfPublishedNameW(
[in] PCWSTR DriverStoreLocation,
[out] PWSTR ReturnBuffer,
[in] DWORD ReturnBufferSize,
[out, optional] PDWORD RequiredSize
);
Параметры
[in] DriverStoreLocation
Указатель на строку с завершением NULL, содержащую полное имя файла (путь к каталогу и имя файла) INF-файла в хранилище драйверов. Кроме того, этот параметр является указателем на строку, завершающую значение NULL, содержащую имя, и при необходимости полный путь к каталогу INF-файла в каталоге INF-файла системы. Дополнительные сведения о том, как указать INF-файл, см. в следующем разделе примечания.
[out] ReturnBuffer
Указатель на буфер, в котором SetupGetInfPublishedName возвращает строку, завершающую значение NULL, содержащую полное имя файла INF в системном каталоге INF. Максимальный размер пути — MAX_PATH. Этот указатель можно задать для null. Сведения о том, как определить требуемый размер буфера возврата, см. в следующем разделе Примечания.
[in] ReturnBufferSize
Размер буфера в символах, предоставленный ReturnBuffer.
[out, optional] RequiredSize
Указатель на переменную типа DWORD, которая получает размер в символах буфера ReturnBuffer. Этот параметр является необязательным и может иметь значение NULL.
Возвращаемое значение
Если SetupGetInfPublishedName успешно, функция возвращает TRUE; в противном случае функция возвращает FALSE. Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Если размер( в символах) полного имени файла запрошенного INF-файла, включая пустой терминатор, больше ReturnBufferSize, функция завершится ошибкой, а вызов getLastError вернет ERROR_INSUFFICIENT_BUFFER.
Замечания
Чтобы определить размер буфера возврата, который требуется содержать полное имя файла указанного INF-файла в системном inf-каталоге, вызовите SetupGetInfPublishedName и задайте ReturnBuffer значение NULL, ReturnBufferSize равным нулю, и укажите RequiredSize. SetupGetInfPublishedName возвращает требуемый размер буфера в RequiredSize.
При предварительной установке устройства пакет драйвера в хранилище драйверов создает две копии INF-файла пакета драйвера. Установка устройства добавляет одну копию в системный INF-каталог и назначает эту копию INF-файла уникальным опубликованным именем файла формы OEMnnn.inf. Установка устройства добавляет в хранилище драйверов вторую копию INF-файла и назначает копировать исходное имя INF-файла.
SetupGetInfPublishedName возвращает полное имя файла INF в каталоге INF-файла системы, соответствующего INF-файлу, который соответствует INF-файлу, который предоставляется DriverStoreLocation. DriverStoreLocation должен указать полное имя файла INF в хранилище драйверов или указать имя файла, а также при необходимости путь к каталогу INF в системном каталоге INF. Например, предположим, что INF-файл для пакета драйвера myinf.inf, а для этого пакета драйверов установка устройства устанавливает INF-файл OEM1.inf в системном каталоге INF C:\Windows\inf. Кроме того, предположим, что установка устройства устанавливает соответствующую копию INF-файла C:\windows\system32\driverstore\filerepository\myinf_12345678\myinf.inf в хранилище драйверов. В этом случае функция возвращает C:\Windows\inf\OEM1.inf, если DriverStoreLocation предоставляет одну из следующих строк: C:\windows\system32\driverstore\filerepository\myinf_12345678\myinf.inf, OEM1.infили C:\Windows\inf\OEM1.inf.
Вызовите функцию SetupGetInfDriverStoreLocation, чтобы получить полное имя ФАЙЛА INF в хранилище драйверов, соответствующее указанному INF-файлу в каталоге INF-файла системы или указанному файлу в хранилище драйверов.
Заметка
Заголовок setupapi.h определяет SetupGetInfPublishedName как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
| Требование | Ценность |
|---|---|
| минимальные поддерживаемые клиентские | Доступно в Windows Vista и более поздних версиях Windows. |
| целевая платформа | Настольный |
| заголовка | setupapi.h (include Setupapi.h) |
| библиотеки |
Setupapi.lib |