INSTALLUI_HANDLER_RECORD回调函数 (msi.h)
INSTALLUI_HANDLER_RECORD函数原型定义安装程序为进度通知和错误消息调用的回调函数。 调用 MsiSetExternalUIRecord 函数以启用基于记录的外部用户界面 (UI) 处理程序。
Windows Installer 3.0 和 Windows Installer 2.0: 不支持。 从 Windows Installer 版本 3.1 及更高版本开始可用。
语法
INSTALLUI_HANDLER_RECORD InstalluiHandlerRecord;
int InstalluiHandlerRecord(
LPVOID pvContext,
UINT iMessageType,
MSIHANDLE hRecord
)
{...}
参数
pvContext
指向传递给 MsiSetExternalUIRecord 函数的应用程序上下文的指针。 此参数可用于错误检查。
iMessageType
指定一个消息框样式、一个消息框图标类型、一个默认按钮和一个安装消息类型的组合。 此参数必须是下列参数之一。
消息框 IconTypesFlag | 含义 |
---|---|
|
消息框中将显示一个感叹号。 |
|
信息符号将显示在消息框中。 |
|
消息框中将显示一个问号。 |
|
消息框中将显示一个停止标志。 |
默认 ButtonsFlag | 含义 |
---|---|
|
第一个按钮是默认按钮。 |
|
第二个按钮是默认按钮。 |
|
第三个按钮是默认按钮。 |
安装消息 TypesFlag | 含义 |
---|---|
|
过早终止 |
|
格式化错误消息 |
|
带格式的警告消息 |
|
用户请求消息。 |
|
日志信息性消息 |
|
当前正在使用的文件列表,在被替换之前必须关闭 |
|
请求确定有效的源位置 |
|
当前正在使用的文件列表,在被替换之前必须关闭。 从 Windows Installer 版本 4.0 开始提供。 有关此消息的详细信息,请参阅将重新启动管理器与外部 UI 配合使用。 |
|
磁盘空间不足消息 |
|
开始操作消息。 此消息包括操作名称和说明。 |
|
与单个操作项关联的格式化数据。 |
|
进度仪表信息。 此消息包括到目前为止的单位数和总单位数的信息。 |
|
用户界面的格式化对话框信息。 |
|
在 UI 初始化之前发送,无字符串数据 |
|
UI 终止后发送,无字符串数据 |
|
在显示创作的对话框或向导之前发送 |
|
在安装产品之前发送。 |
|
在安装产品后发送。 |
如果缺少上述任何消息,应使用以下默认值:MB_OK、无图标和MB_DEFBUTTON1。 没有默认的安装消息类型;始终指定消息类型。
hRecord
指定记录对象的句柄。 有关记录对象的信息,请参阅 记录处理函数。
返回值
以下返回值映射到消息框样式指定的按钮:
IDOK
注解
如果知道调用方感兴趣的错误或消息类型,并且想要避免分析发送到INSTALLUI_HANDLER类型的外部 UI 处理程序的字符串消息,但从 hRecord 字段检索相关数据,则应使用这种类型的外部 UI 处理程序。
有关从外部用户界面处理程序返回值的详细信息,请参阅 从外部用户界面处理程序返回值 主题。 发送到基于记录的外部 UI 处理程序的 hRecord 对象由 Windows Installer 拥有,并且仅在回调的生存期内有效。 回调应从记录中提取所需的任何数据,并且不应关闭该句柄。
Windows Installer 将忽略基于记录的外部 UI 处理程序更改 hRecord 对象中的数据的任何尝试。
若要详细了解如何使用基于记录的外部处理程序,请参阅使用 MsiSetExternalUIRecord 监视安装。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer 3.1。 |
目标平台 | Windows |
标头 | msi.h |