青花的寓意:软件无法卸载、修改或安装的解决办法——Windows Installer清理实用工具

来源:百度文库 编辑:九乡新闻网 时间:2024/07/08 20:57:17

Windows系统下的软件安装程序,越来越多的使用Windows Installer,它是集成在Windows系统中非常强大的软件安装工具,目前比较流行的打包方式是Wix(最初由微软的一位程序员开发,现在已经被使用在微软的大部分产品中)——一种XML文档描述的方式。本文只介绍修复Windows Installer类型的安装器错误,大概是因为它比较复杂,与系统集成度高,导致它更容易犯错。所以像NSISInno和其他的安装器变得流行也是有道理的,从可维护角度考虑,它们更容易制作使用(你可以在汉化新世纪找到非常多的安装器版本)。

Windows Installer 功能简介

我们在犹豫是否采用Windows Installer作为软件的部署工具时,先看看它都能做什么?

  • 在安装失败时将计算机还原为原始状态:Windows Installer 跟踪在程序安装过程中对系统进行的所有更改。如果安装失败,Installer 可以将系统恢复到其初始状态。这称为“回滚”。
  • 帮助防止特定形式的程序之间产生冲突:正在安装或卸载的程序可能会导致计算机上已安装的另一个程序出现问题,甚至导致计算机停止响应(挂起)。Installer 可以强制实施一些安装规则,以帮助防止当安装操作更新由现有程序共享的动态链接库 (DLL) 文件时,或当卸载操作删除由另一个程序共享的 DLL 文件时出现冲突。
  • 诊断并修复损坏的程序:程序可以要求 Installer 确定已安装的程序是否缺少文件,或者文件是否已损坏。然后,它可以要求该服务根据需要再次只复制已发现丢失或损坏的文件来修复该程序。
  • 可靠地卸载现有程序:Installer 可以可靠地卸载以前安装的任何程序,并删除所有相关联的注册表条目和程序文件,但其他已安装的软件所共享的文件及注册表条目除外。
  • 支持按需安装程序功能:可以指示 Installer 首先安装程序的最小子集。之后,在您首次使用需要附加组件的功能时,会自动安装附加组件。
  • 支持无人参与的程序安装:Installer 支持根据管理员的指令使用脚本来安装程序。

许多功能是非Windows Installer所不具备的,所以,当今专业软件公司的产品,Windows平台下的产品都是由Windows Installer发布的,在它的基础上,可能还会采用一些其他压缩手段。

Windows Installer的可执行文件和服务

Windows Installer由两部分组成,一部分是客户端安装服务Msiexec.exe,当我们安装软件时经常会看到这个进程,它作为一个服务注册到系统,启动类型为手动,当我们安装这种格式打包的软件时,该服务启动,它会通过Msi.dll读取软件安装包执行软件安装;而我们的安装软件通常是一个名为setup.exe启动加载一个.msi扩展名的文件,.msi文件存储了此安装程序的数据信息,它属于关系型数据库的格式——反编译过msi的朋友应该很熟悉。还有一些其他格式安装文件:.msp、.mst等,更多信息可以Google或Bing一下。

从哪里获得Windows Installer

正如你所预料的,也许你的系统中的Windows Installer版本过旧,或者根本就不存在 -__- 。目前最新版本的Windows Installer是4.5(支持:Vista、2008、7对应Windows 6、2003、XP操作系统、),Windows XP系统中常用的版本是3.1。如果你使用的是Windows 9x操作系统,可以翻翻Office 2003/XP的安装光盘,安装InstMsi.exe。

Windows Installer 出错了

阅读了前面的文字,大概能了解到Windows Installer的出错原因可能会是多种多样的。无论怎样,出错了,就得想办法解决。

1.无法访问 Windows 安装程序,服务中Windows Installer状态为停止,不能启动。

很明显是该服务没有启动,我们可以先到服务中找到该条目,看看它的状态。
Win+R调出“运行”窗口,输入“services.msc”打开“服务”控制台,你可以找到该条目。

在命令提示符中输入:
msiexec /unregserver
msiexec /regserver

用这两个命令注销,重新注册该服务。或者在前面的下载链接中,下载一个较新版本的Windows Installer安装程序,安装到系统中。

2.某软件不能进入维护模式,不能卸载或重新安装,提示组件不完整请查看日志、安装失败的提示

对于那些大型软件,如微软Office 2007、Visual Studio 2008,出现这样那样的安装失败信息是很常见的。基于Windows Installer打包的安装程序似乎总会在我们以为一帆风顺的时候出现许多令人尴尬的问题。我想这个东西正是你想要的——Windows Installer清理实用工具点此下载)。

它的功能很强大,又很简单,就是清除某项Windows Installer的全部安装信息。清除之后,你的软件就可以重新安装的。说老实话,使用的时候应该格外注意,不要清理错项目,以免造成不必要的损失。