概述
WindowsInstaller是微软Windows操作系统中的一个组件,从Windows2000开始就作为系统的一部分存在,主要用于管理和配置软件服务。
它是一种可扩展的软件管理系统,不仅能够安装软件,还能管理软件组件的添加和删除、监视文件复原,并通过回滚来维护基本的灾难恢复。
工作原理
- 客户端安装服务与软件包文件结合:由Msiexec.exe程序作为客户端安装服务,与Microsoft软件安装(MSI)软件包文件协同工作。
当安装程序调用Msiexec.exe时,它遥Msi.dll读取软件包(.msi)文件,应用任何转换(.mst)文件,并合并安装程序所提供的命令行选项,然后执行所有与安装有关的任务。 - 安装过程中的操作:在安装过程中,WindowsInstaller会将文件复制到硬盘、修改注册表、在桌面上创建快捷方式等,同时遥对系统进行的所有更改,以便在安装失败时将计算机还原为原始状态。
功能特点
- 回滚功能:如果安装过程中出现错误或用户取消安装,WindowsInstaller可以将系统恢复到安装前的状态,撤销所有已进行的更改。
- 支持多包事务:可以创建从多个包单交易的多包事务,通过链接器动态包含软件包,安装失败时可回滚安装。
- 嵌入式用户界面处理程序:允许嵌入自定义用户界面,方便与安装程序包集成,也可在添加或删除程序控制面板项以及修复过程中调用。
- 自我修复功能:当软件的关键文件或注册表项损坏或丢失时,WindowsInstaller可以自动检测并重新安装或修复这些文件和项,遥软件的正常运行。
常见问题及解决方法
- 无法访问WindowsInstaller服务:可运行msiexec/unregister停掉此服务,再运行msiexec/regserver;也可手动注册msi.dll,运行regsvr32msi.dll。
- 安装程序无法将Windows配置为在此计算机上运行:按键盘上的Shift键和F10键呼出对话框,输入cd、oobe空格,再输入msoobe.exe,按回车键,然后按照提示进行操作。
相关工具
- WindowsInstallerCleanupUtility:可以轻而易举地删除某个程序的WindowsInstaller配置信息,若在安装程序时遇到WindowsInstaller方面的问题,可先用其删掉程序之前的安装信息再试。