【原创】windows installer安装包有问题。解决办法

标签:
windowsinstaller安装包有问题vbs脚本wscript.shell |
分类: windows编程.net |
这几天在开发windows服务程序的安装包(*.msi)。windows服务程序的开发环境是vs下vc++项目。
vs下c#和vb开发的应用程序,windows studio installer安装项目的开发都有向导,只用overwirte一些控件的接口,相对简单很多。vc++的安装程序就比较悲催了,我使用了vbs脚本。
我需要实现的【自定义操作】
安装时解压.msi包之后,需要调用脚本,将我的exe可执行文件自动添加到windows服务,启动服务。
卸载时,调用脚本,自动停止服务、从系统删除服务。
http://s8/middle/5f435c13tc7fbc8b4ea67&690installer安装包有问题。解决办法" TITLE="【原创】windows
【遇到的问题】
vsb脚本以前我没用过,百度找的例子改了改,卸载脚本service_uninstall.vbs就是这样子(还在调试,没有设置路径啊):
dim objshell
Set objShell =
CreateObject("Wscript.Shell")
Msgbox("卸载bada_matrix_server服务1")
objShell.Run "sc stop bada_matrix_control"
objShell.Run "sc delete bada_matrix_control"
Msgbox("卸载bada_matrix_server服务2")
Wscript.quit
安装脚本service_install.vbs如下
dim objshell
Set objShell = CreateObject("Wscript.Shell")
Msgbox("创建bada_matrix_server服务1")
objShell.Run "sc create bada_matrix_control binpath=
center_control.exe type= own start= auto"
Msgbox("创建bada_matrix_server服务2")
Wscript.quit
结果每次安装时,执行到安装脚本就出错了(报的错如下图)。我把安装脚本去掉了。只有卸载脚本,安装成功了。
悲剧的是装完了无法卸载,因为卸载时调用到service_uninstall.vbs就报错。自己挖了个坑跳进去了。
http://s10/middle/5f435c13tc7fba67b1259&690installer安装包有问题。解决办法" TITLE="【原创】windows
【在MSDN找到以下链接】
http://support.microsoft.com/kb/223300/zh-cn
根据本文找到了安装报错日志信息:
【错误 1720。Windows Installer
程序包有问题。此安装需要的脚本不能运行。请与您的支持人员或程序包开发商联系。自定义操作
_A4FDC379_4708_4139_8373_64B37058925D 的脚本错误 -2146827864, Microsoft
VBScript 运行时错误: 缺少对象: 'WScript' 行 7, 列 1,
=== 记录停止: 2012-8-24
才发现原来是这一句错了Wscript.quit,换成Set objShell = Nothing
终于妥了。。
继续下一步工作:在脚本中获取安装路径,安装服务时需要指定exe文件的绝对路径。
如何启用 Windows Installer 日志记录
http://support.microsoft.com/library/images/support/cn/minus.pnginstaller安装包有问题。解决办法" TITLE="【原创】windows installer安装包有问题。解决办法" />本页
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />概要
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />更多信息
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />帮我修复此问题
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />我自己修复此问题
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />启用 Windows Installer 日志记录
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />通过组策略启用 Windows Installer 日志记录
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />属性
- http://support.microsoft.com/library/images/support/kbgraphics/public/en-us/downarrow.gifinstaller安装包有问题。解决办法" />提供反馈
http://support.microsoft.com/library/images/support/cn/minus.pnginstaller安装包有问题。解决办法" TITLE="【原创】windows installer安装包有问题。解决办法" />概要
注意 本文中的注册表项对所有 Windows 操作系统均有效。
http://support.microsoft.com/library/images/support/cn/minus.pnginstaller安装包有问题。解决办法" TITLE="【原创】windows installer安装包有问题。解决办法" />更多信息
帮我修复此问题
若要自动修复该问题,请单击“修复此问题”链接。然后单击“文件下载”对话框中的“运行”,并按照该向导中的步骤执行操作。启用 Windows Installer 日志记录 | 禁用 Windows Installer 日志记录 |
---|---|
注意:此向导可能只提供英文版本。但是,Windows 的其他语言版本也提供自动修复功能。
注意:如果您使用的计算机并未出现此问题,则可将自动修复功能保存至闪存驱动器或 CD 中,然后就可在出现此问题的计算机中运行该功能。
我自己修复此问题
重要说明 此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:启用 Windows Installer 日志记录
若要自己启用 Windows Installer 日志记录,请使用 Regedit.exe 打开注册表,然后创建以下路径和项:Reg_SZ:日志
值:voicewarmupx
o - 磁盘空间不足消息
i - 状态消息
c - 初始 UI 参数
e - 所有错误消息
w - 非致命警告
a - 启动操作
r - 特定于操作的记录
m - 内存不足或致命的退出消息
u - 用户请求
p - 终端属性
+ - 附加到现有文件之后
! - 将每一行刷新到日志中
x - 其他调试信息。“x”标志仅可在 Windows Server 2003 和更高版本操作系统、MSI 可重新分发版本 3.0 和 MSI 可重新分发的更高版本上使用。
“*”- 通配符,记录除 v 和 x 选项外的所有信息。若要包含 v 和 x 选项,请指定“/l*vx”。
通过组策略启用 Windows Installer 日志记录
您可以通过编辑相应的 OU 或 Directory 组策略通过组策略启用日志记录。在组策略下,请依次展开“计算机配置”、“管理模板”、“Windows 组件”,然后选择“Windows Installer”。双击“日志记录”,然后单击“启用”。在“日志记录”框中,输入您希望记录的选项。日志文件 Msi.log 出现在系统卷的 Temp 文件夹中。
有关 MSI 日志记录的更多信息,请参阅 Windows 帮助。为此,请使用短语“msi 日志记录”进行搜索,并选择“Managing options for computers through Group Policy”(通过组策略管理计算机选项)。
注意“X”标志的添加可在 Windows Server 2003 和更高版本操作系统、MSI 可重新分发版本 3.0 和 MSI 可重新分发的更高版本的本地执行。
http://support.microsoft.com/library/images/support/cn/minus.pnginstaller安装包有问题。解决办法" TITLE="【原创】windows installer安装包有问题。解决办法" />属性
这篇文章中的信息适用于:
- Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
- Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
- Microsoft Windows Server 2003 Standard Edition
- Microsoft Windows Server 2003 Datacenter Edition
- Microsoft Windows Server 2003 Enterprise Edition
- Microsoft Windows Server 2003 Web Edition
- Microsoft Windows XP Professional Edition
- Microsoft Windows XP Home Edition
- Windows Server 2008 Standard
- Windows Server 2008 Enterprise
- Windows Server 2008 Datacenter
- Windows Server 2008 for Itanium-Based Systems
- Windows Server 2008 Standard without Hyper-V
- Windows Server 2008 Enterprise without Hyper-V
- Windows Server 2008 Datacenter without Hyper-V
关键字:
|
kbenv kbhowto kbfixme kbmsifixme KB223300 |