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


функция обратного вызова INSTALLUI_HANDLER_RECORD (msi.h)

Прототип функции INSTALLUI_HANDLER_RECORD определяет функцию обратного вызова, которую установщик вызывает для уведомления о ходе выполнения и сообщений об ошибках. Вызовите функцию MsiSetExternalUIRecord , чтобы включить обработчик внешнего пользовательского интерфейса (UI) на основе записей.

Установщик Windows 3.0 и установщик Windows 2.0: Не поддерживается. Доступно начиная с установщика Windows версии 3.1 и более поздних версий.

Синтаксис

INSTALLUI_HANDLER_RECORD InstalluiHandlerRecord;

int InstalluiHandlerRecord(
  LPVOID pvContext,
  UINT iMessageType,
  MSIHANDLE hRecord
)
{...}

Параметры

pvContext

Указатель на контекст приложения, переданный в функцию MsiSetExternalUIRecord . Этот параметр можно использовать для проверки ошибок.

iMessageType

Задает сочетание одного стиля окна сообщения, одного типа значка окна сообщения, одной кнопки по умолчанию и одного типа сообщения об установке. Этот параметр должен иметь один из следующих значений.

Стили окна сообщенияFlag Значение
MB_ABORTRETRYIGNORE
Окно сообщения содержит кнопки "Прервать", "Повторить" и "Пропустить ".
MB_OK
Окно сообщения содержит кнопку ОК . Это значение по умолчанию.
MB_OKCANCEL
Окно сообщения содержит кнопки ОК и Отмена .
MB_RETRYCANCEL
Окно сообщения содержит кнопки Повторить и Отмена .
MB_YESNO
Окно сообщения содержит кнопки Да и Нет .
MB_YESNOCANCEL
Окно сообщения содержит кнопки Да, Нет и Отмена .
 
Значок окна сообщенияTypesFlag Значение
MB_ICONEXCLAMATION, MB_ICONWARNING
В окне сообщения появится восклицательный знак.
MB_ICONINFORMATION, MB_ICONASTERISK
В окне сообщения появится информационный знак.
MB_ICONQUESTION
В окне сообщения появится вопросительный знак.
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND
В окне сообщения появится знак остановки.
 
Кнопка по умолчаниюFlag Значение
MB_DEFBUTTON1
Первая кнопка является кнопкой по умолчанию.
MB_DEFBUTTON2
Вторая кнопка является кнопкой по умолчанию.
MB_DEFBUTTON3
Третья кнопка является кнопкой по умолчанию.
 
Install message TypesFlag Значение
INSTALLMESSAGE_FATALEXIT
Преждевременное завершение
INSTALLMESSAGE_ERROR
Форматированные сообщения об ошибке
INSTALLMESSAGE_WARNING
Форматируемо предупреждающее сообщение
INSTALLMESSAGE_USER
Сообщение о запросе пользователя.
INSTALLMESSAGE_INFO
Информативное сообщение для журнала
INSTALLMESSAGE_FILESINUSE
Список файлов, используемых в настоящее время, которые необходимо закрыть перед заменой
INSTALLMESSAGE_RESOLVESOURCE
Запрос на определение допустимого расположения источника
INSTALLMESSAGE_RMFILESINUSE
Список используемых в настоящее время файлов, которые необходимо закрыть перед заменой. Доступно начиная с установщика Windows версии 4.0. Дополнительные сведения об этом сообщении см. в статье Использование диспетчера перезапуска с внешним пользовательским интерфейсом.
INSTALLMESSAGE_OUTOFDISKSPACE
Сообщение о нехватке места на диске
INSTALLMESSAGE_ACTIONSTART
Сообщение о начале действия. Это сообщение содержит имя и описание действия.
INSTALLMESSAGE_ACTIONDATA
Форматированные данные, связанные с отдельным элементом действия.
INSTALLMESSAGE_PROGRESS
Сведения о датчике хода выполнения. Это сообщение содержит сведения о единицах и общем количестве единиц.
INSTALLMESSAGE_COMMONDATA
Форматированные сведения о диалоге для пользовательского интерфейса.
INSTALLMESSAGE_INITIALIZE
Отправлено до инициализации пользовательского интерфейса без строковых данных
INSTALLMESSAGE_TERMINATE
Отправлено после завершения пользовательского интерфейса, без строковых данных
INSTALLMESSAGE_SHOWDIALOG
Отправлено перед отображением созданных диалоговых окон или мастера
INSTALLMESSAGE_INSTALLSTART
Отправлено до установки продукта.
INSTALLMESSAGE_INSTALLEND
Отправлено после установки продукта.
 
 

Если какое-либо из предыдущих сообщений отсутствует, следует использовать следующие значения по умолчанию: MB_OK, без значка и MB_DEFBUTTON1. Тип сообщения об установке по умолчанию отсутствует; всегда указывается тип сообщения.

hRecord

Задает дескриптор объекта записи. Сведения об объектах записей см. в разделе Функции обработки записей.

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

Следующие возвращаемые значения соответствуют кнопкам, указанным в стиле окна сообщения:

IDOK

 
IDCANCEL
 
IDABORT
 
IDRETRY
 
IDIGNORE
 
IDYES
 
IDNO

Комментарии

Этот тип внешнего обработчика пользовательского интерфейса следует использовать, когда известно, какой тип ошибок или сообщений интересует вызывающий объект, и хочет избежать дополнительных затрат на анализ строкового сообщения, которое отправляется внешнему обработчику пользовательского интерфейса INSTALLUI_HANDLER типа, но извлекает интересующие данные из полей hRecord.

Дополнительные сведения о возврате значений из внешнего обработчика пользовательского интерфейса см. в разделе Возвращение значений из обработчика внешнего пользовательского интерфейса . Объект hRecord, отправляемый внешнему обработчику пользовательского интерфейса на основе записей, принадлежит установщику Windows и действителен только в течение времени существования обратного вызова. Обратный вызов должен извлекать из записи все необходимые данные и не закрывать этот дескриптор.

Любая попытка внешнего обработчика пользовательского интерфейса на основе записей изменить данные в объекте hRecord будет игнорироваться установщиком Windows.

Дополнительные сведения об использовании внешнего обработчика на основе записей см. в разделе Мониторинг установки с помощью MsiSetExternalUIRecord.

Требования

Требование Значение
Минимальная версия клиента Установщик Windows 5.0 в Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Установщик Windows 4.0 или Установщик Windows 4.5 в Windows Server 2008 или Windows Vista. Установщик Windows 3.1 в Windows Server 2003 или Windows XP.
Целевая платформа Windows
Header msi.h

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

MsiSetExternalUI

Не поддерживается в установщике Windows 3.0 и более ранних версий