Функция SetupPromptForDiskW (setupapi.h)
[Эта функция доступна для использования в операционных системах, указанных в разделе "Требования". Он может быть изменен или недоступен в последующих версиях. SetupAPI больше не следует использовать для установки приложений. Вместо этого используйте установщик Windows для разработки установщиков приложений. SetupAPI по-прежнему используется для установки драйверов устройств.]
Функция SetupPromptForDisk отображает диалоговое окно с запросом пользователя на диск.
Синтаксис
WINSETUPAPI UINT SetupPromptForDiskW(
[in] HWND hwndParent,
[in] PCWSTR DialogTitle,
[in] PCWSTR DiskName,
[in] PCWSTR PathToSource,
[in] PCWSTR FileSought,
[in] PCWSTR TagFile,
[in] DWORD DiskPromptStyle,
[in, out] PWSTR PathBuffer,
[in] DWORD PathBufferSize,
[in, out] PDWORD PathRequiredSize
);
Параметры
[in] hwndParent
Обработайте родительское окно для этого диалогового окна.
[in] DialogTitle
Необязательный указатель на строку null-terminated, указывающую заголовок диалогового окна. Если этот параметр null, используется значение по умолчанию "%s--Files Needed" (локализовано). Значение "%s" заменяется текстом, полученным из родительского окна. Если текст не извлекается из родительского окна, то заголовок "Необходимые файлы".
[in] DiskName
Необязательный указатель на строку null-terminated, указывающую имя диска для вставки. Если этот параметр null, используется значение по умолчанию "(Неизвестно)" (локализованное).
[in] PathToSource
Необязательный указатель на строку null-endd, указывающую часть пути ожидаемого расположения файла, например F:\x86. Если это не указано, используется путь, в котором используется SetupPromptForDisk последнее расположение файла. Если этот список пуст, используется системное значение по умолчанию.
[in] FileSought
Указатель на строку null-terminated, указывающую имя нужного файла (только часть имени файла). Имя файла отображается, если пользователь нажимает кнопку "Обзор". Эта подпрограмма ищет файл с помощью сжатых имен форм; поэтому вы можете передать cmd.exe и не беспокоиться о том, что файл фактически существует как cmd.ex_ на исходном носителе.
[in] TagFile
Необязательный указатель на строку null-terminated, указывающую файл тега (только часть имени файла), который определяет наличие определенного тома съемных носителей. Если выбранный в данный момент путь поместит файл на съемный носитель, а файл тега указан, 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-terminated. Строка null-terminated не должна превышать размер целевого буфера. Вы можете вызвать функцию один раз, чтобы получить необходимый размер буфера, выделить необходимую память, а затем вызвать функцию во второй раз, чтобы получить данные. С помощью этого метода можно избежать ошибок из-за недостаточного размера буфера. См. раздел "Примечания".
[in] PathBufferSize
Размер буфера, на который указывает PathBuffer, в символах. Это должно быть по крайней мере MAX_PATH длину. Это включает в себя null конца.
[in, out] PathRequiredSize
Необязательный указатель на переменную, которая получает требуемый размер для PathBuffer, в символах. Это включает в себя null конца.
Возвращаемое значение
Функция возвращает одно из следующих значений.
Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Замечания
Если эта функция вызывается с PathBufferNULL и PathBufferSize нуля, функция помещает размер буфера, необходимый для хранения указанных данных в переменную, на которую указывает PathRequiredSize. Если функция выполнена успешно, возвращаемое значение NO_ERROR. В противном случае возвращаемое значение является одним из значений, описанных в разделе "Возвращаемые значения".
Заметка
Заголовок setupapi.h определяет SetupPromptForDisk в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows XP [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | setupapi.h |
библиотеки |
Setupapi.lib |
DLL | Setupapi.dll |
См. также
Обзор