Функция SetupPromptForDiskA (setupapi.h)
[Эта функция доступна для использования в операционных системах, указанных в разделе Требования. В последующих версиях он может быть изменен или недоступен. SetupAPI больше не следует использовать для установки приложений. Вместо этого используйте установщик Windows для разработки установщиков приложений. SetupAPI по-прежнему используется для установки драйверов устройств.]
Функция SetupPromptForDisk отображает диалоговое окно с запросом на ввод диска.
Синтаксис
WINSETUPAPI UINT SetupPromptForDiskA(
[in] HWND hwndParent,
[in] PCSTR DialogTitle,
[in] PCSTR DiskName,
[in] PCSTR PathToSource,
[in] PCSTR FileSought,
[in] PCSTR TagFile,
[in] DWORD DiskPromptStyle,
[in, out] PSTR PathBuffer,
[in] DWORD PathBufferSize,
[in, out] PDWORD PathRequiredSize
);
Параметры
[in] hwndParent
Дескриптор в родительском окне для этого диалогового окна.
[in] DialogTitle
Необязательный указатель на строку с пустым завершением, указывающую заголовок диалогового окна. Если этот параметр имеет значение NULL, используется значение по умолчанию "%s--Files Needed"" (локализовано). "%s" заменяется текстом, полученным из родительского окна. Если текст не извлекается из родительского окна, заголовок — "Необходимые файлы".
[in] DiskName
Необязательный указатель на строку, завершающуюся значением NULL, указывающую имя вставляемого диска. Если этот параметр имеет значение NULL, используется значение по умолчанию "(Неизвестно)" (локализовано).
[in] PathToSource
Необязательный указатель на строку с пустым завершением, указывающую часть пути к ожидаемому расположению файла, например F:\x86. Если он не указан, используется путь, по которому setupPromptForDisk последней разыскал файл. Если этот список пуст, используется системное значение по умолчанию.
[in] FileSought
Указатель на строку с пустым завершением, указывающую имя необходимого файла (только часть имени файла). Имя файла отображается, если пользователь нажимает кнопку Обзор . Эта подпрограмма ищет файл, используя сжатые имена форм; Таким образом, вы можете передать cmd.exe и не беспокоиться о том, что файл на самом деле существует как cmd.ex_ на исходном носителе.
[in] TagFile
Необязательный указатель на строку со значением NULL, указывающую файл тега (только часть имени файла), который определяет наличие определенного тома съемных носителей. Если выбранный в данный момент путь помещается на съемный носитель и указан файл тега, SetupPromptForDisk ищет файл тега в корне диска, чтобы определить, следует ли продолжить.
Например, если PathToSource имеет значение A:\x86, файл тега — disk1.tag, а пользователь вводит B:\x86 в элемент управления редактированием диалогового окна запроса, подпрограмма ищет B:\disk1.tag, чтобы определить, следует ли продолжить. Если файл тега не найден, функция ищет файл тега с помощью PathToSource.
Если файл тега не указан, съемный носитель работает так же, как и несъемный носитель, и перед продолжением выполняется поиск FileSought .
[in] DiskPromptStyle
Указывает поведение диалогового окна. Этот параметр может быть сочетанием следующих флагов.
IDF_CHECKFIRST
Перед отображением диалогового окна запроса проверьте наличие файла или диска и немедленно верните DPROMPT_SUCCESS.
IDF_NOBEEP
Запретить звуковой сигнал в диалоговом окне, чтобы обратить внимание пользователя при его первом появлении.
IDF_NOBROWSE
Параметр обзора не отображается.
IDF_NOCOMPRESSED
Не проверка для сжатых версий исходного файла.
IDF_NODETAILS
Не отображать подробные сведения.
IDF_NOFOREGROUND
Запретить этому диалоговому окну стать окном переднего плана.
IDF_NOSKIP
Параметр пропуска не отображается.
IDF_OEMDISK
Запрос диска, предоставленного производителем оборудования.
IDF_WARNIFSKIP
Предупреждение пользователя о том, что пропуск файла может повлиять на установку.
[in, out] PathBuffer
Необязательный указатель на буфер, который при возврате получает путь (без имени файла) к указанному пользователем расположению через диалоговое окно. Следует использовать строку со значением NULL. Строка, завершающаяся значением NULL, не должна превышать размер буфера назначения. Вы можете вызвать функцию один раз, чтобы получить требуемый размер буфера, выделить необходимую память, а затем вызвать функцию во второй раз, чтобы получить данные. С помощью этого метода можно избежать ошибок из-за недостаточного размера буфера. См. раздел «Примечания».
[in] PathBufferSize
Размер буфера, на который указывает PathBuffer, в символах. Она должна быть по крайней мере MAX_PATH длинной. Сюда входит признак конца null .
[in, out] PathRequiredSize
Необязательный указатель на переменную, которая получает необходимый размер для PathBuffer в символах. Сюда входит признак конца null .
Возвращаемое значение
Функция возвращает одно из следующих значений.
Дополнительные сведения об ошибке можно получить, вызвав GetLastError.
Комментарии
Если эта функция вызывается с PathBufferсо значением NULL и Значением PathBufferSize , равным нулю, функция помещает размер буфера, необходимый для хранения указанных данных, в переменную, на которую указывает PathRequiredSize. Если функция выполняется успешно, возвращаемое значение будет NO_ERROR. В противном случае возвращаемое значение является одним из значений, описанных в разделе Возвращаемые значения.
Примечание
Заголовок setupapi.h определяет SetupPromptForDisk как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Целевая платформа | Windows |
Header | setupapi.h |
Библиотека | Setupapi.lib |
DLL | Setupapi.dll |