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


SPFILENOTIFY_NEEDNEWCABINET сообщение

Уведомление SPFILENOTIFY_NEEDNEWCABINET отправляется SetupIterateCabinet , чтобы указать, что текущий файл продолжается в другом кабинете. Затем подпрограмма обратного вызова может вызвать SetupPromptForDisk или создать собственное диалоговое окно, чтобы предложить пользователю вставить следующий диск.

SPFILENOTIFY_NEEDNEWCABINET
  Param1 = (UINT) CabinetInfo;
  Param2 = (UINT) NewPath;
            

Параметры

Параметр 1

Указатель на структуру CABINET_INFO , содержащую сведения о шкафе и извлекаемом файле.

Param2

Если обратный вызов возвращает NO_ERROR, этот параметр является указателем на строку, завершаемую null. Если строка не пуста, она указывает новый путь к шкафу.

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

Подпрограмма должна возвращать одно из следующих значений.

Код возврата Описание
NO_ERROR
Ошибка не обнаружена, продолжайте обработку шкафа.
ERROR_XXX
Произошла ошибка указанного типа. Функция SetupIterateCabinet возвращает значение FALSE, а указанный код ошибки будет возвращен вызовом Метода GetLastError.

Примечание

По умолчанию не существует процедуры обратного вызова кабинета; Таким образом, необходимо предоставить подпрограмму обратного вызова для обработки уведомлений, отправляемых SetupIterateCabinet.

Комментарии

Если подпрограмма обратного вызова возвращает NO_ERROR, SetupIterateCabinet проверяет буфер, на который указывает Param2. Если буфер не пуст, он содержит новый исходный путь. Если буфер пуст, предполагается, что исходный путь не изменяется.

Функция обратного вызова должна убедиться, что кабинет доступен перед возвратом, вызывая функцию SetupPromptForDisk , если необходимо вставить новый носитель.

Требования

Требование Значение
Минимальная версия клиента
Windows XP [только классические приложения]
Минимальная версия сервера
Windows Server 2003 [только классические приложения]
Заголовок
Setupapi.h

См. также раздел

Обзор

Уведомления

CABINET_INFO

SetupIterateCabinet