WindowsInstaller故障处理.docx

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WindowsInstaller故障处理

Windows Installer 故障处理 (1)问:我如何才能找出程序包安装失败的原因?   答:有三种比较好的方法可以对程序包的安装问题进行跟踪。第一种方法是通过运行校验确信您的程序包合法有效。通过进行验证,您可以发现错误和警告,并找出一些常见的安装程序制作问题。有两个工具可以对安装程序包进行验证,这两个程序都可以通过Windows Installer SDK获得:MsiVal2和Orca。MsiVal2是一个用来校验程序包的命令行工具。Orca则为验证提供了一个图形化的用户界面,并且可以突出显示程序包中的无效实体。   第二种方法是使用应用程序事件日志。Windows Installer会把成功和失败信息记录在应用程序事件日志当中。   最后一种方法是生成一个详细日志文件。然后分析该详细日志文件,并从中找出错误的根源。Windows Installer SDK提供的WILogUtl.exe工具可以帮助您分析详细日志文件。 日志记录可以通过Windows Installer日志记录策略加以启用,或者,您也可以通过在MSIExec命令行中附加/L*v path to logfile来启用该功能。   为了通过策略获得详尽的详细日志文件, 请使用如下注册表键:    HKLM/Software/Policies/Microsoft/Windows/Installer    设置:Logging = REG_SZ voicewarmup    设置:Debug = REG_DWORD 0x7   通过策略键生成的日志文件将以msiXXXXX.log的格式存储在用户的%temp%文件夹中。   注意:通过命令行产生的日志记录比所有的日志记录策略设置拥有更高的优先级。   (2)问:在我每次启动程序的时候,Windows Installer都会执行安装操作。我怎样确定产生这种按需安装的原因是什么?   答:有一种方法可以容易地确定引起按需安装的原因,那就是:在应用程序事件日志中查找以下格式的MsiInstaller日志信息:   事件类型:警告   事件来源:MsiInstaller   事件ID:1001   描述:   检测产品{000C1109-0000-0000-C000-000000000046},特性Example 在请求组件0000-0000-C000-000000000046}时发生失败   事件类型:警告   事件来源:MsiInstaller   事件ID:1004   描述:   检测产品{000C1109-0000-0000-C000-000000000046},特性Example,组件0000-0000-C000-000000000046}失败。资源C:/Progam Files/example/example.exe不存在。   第一条信息(事件ID为1001)说明了哪一个组件正在被安装。此处列出的组件是在针对特殊快捷方式的Shortcut(快捷方式)表中的Component(组件)列中所指定的组件。   第二条信息(事件ID为1004)指出了哪一个组件在检测时发生失败。Windows Installer 2.0经过改进的事件日志功能已经对信息进行了更新,以便在大多数情况下,用户都可以通过事件信息查找出导致检测失败的真正问题根源。 如果组件的键路径(Keypath)丢失或者受损,可能会导致用户重新安装程序。   在上例中,用户需要重新安装程序,因为资源c:/Program Files/example/example.exe不存在。您应该找出导致键路径不存在的原因所在--在本例中,是因为用户删除了该文件。   (3)问:我怎样才能确定Windows Installer是否安装了我的功能特性或组件?   答:确定Windows Installer是否安装了某个特定功能或组件的方法十分简单。您可以通过Windows Installer的verbose日志文件找到答案。您首先需要查找的是InstallValidate操作的日志信息。该操作将会把程序包中每个功能和组件的安装、请求和操作状态记录下来。   MSI (s) (5C:F4): 执行操作: InstallValidate   操作开始 1:51:18: InstallValidate.   MSI (s) (5C:F4): 功能: Example; 安装: 缺席; 请求: 本地; 操作: 本地   MSI (s) (5C:F4): 组件: Example; 安装: 缺席; 请求: 本地; 操作: 本地   操作结束 1:51:

文档评论(0)

aicencen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档