首页 | 手机 | 笔记本 | 电脑硬件 | MP3 | DC | DV | 品牌机 | 办公 | 网络 | 服务器 | 投影机 | 新闻 | 游戏 | 学院 | 下载 | 论坛
Windows Installer 阶段教学
2004-6-17 9:59:00 文/

关于Windows Installer服务出错解决方法

  方法一:
  
  卸载,重新安装windows installer服务
  
  一、先用msiexec /unregserver 停掉windows installer服务。
  二、下载InstMsiW.exe,用winrar解压开。进入目录。
  三、右击msi.inf ,点击安装,右击mspatcha.inf ,点击安装。
  四、再用msiexec.exe /regserver 启用服务。
  
  方法二:
  
  1.如果曾安装过ACDSee5.0(包括迷你中文版),卸载它。如果还不行就重装Windows
  Installer 或者ACDSee 4.0
  2.运行cmd,然后运行sfc/scannow检查系统文件
  3.运行Services.msc,把Windows Installer 服务设置为手动运行,然后重新运行
  4.打开任务管理器,找到并结束ikernel.exe进程,重新安装
  5.禁用杀毒软件的实时防护
  6.删除 C:Program FilesCommon FilesInstallShieldEngineIntel 32这个文
  件夹中的所有文件,然后重启动电脑,重新运行安装程序
  
  或者查看下面的网页:
  
  安装程序安装出错解决方法之葵花宝典    moonet(翻译)
  http://www.csdn.net/develop/article/18/18184.shtm
  
  
  方法三:
  
  这是由于一些软件制作的问题导致windows installer不能正常工作
  恢复步骤如下:
  
  1.再次安装windows installer2.0,运行instmsiw.exe
  如果说'服务已经安装'然后直接退出安装就再跟着做,否则你重装就OK了!
  
  2.删除注册表中的[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSIServer]
  然后运行instmsiw.exe
  
  3.绝招:
  (1) 删除msiserver 服务
  运行regedit,删除下面的MSIServer 服务
  [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSIServer]
  把下面的内容存为unmsiserver.reg 文件,然后双击左键,把它合并进注册表中
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;unmsiserver.reg
  Windows Registry Editor Version 5.00
  [-HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesMSIServer]
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  
  (2) 删除msi 的文件
  用下面的脚本存为一个unmsi.inf文件,然后在inf文件上右键单击install,就会删除一些msi的dll,这时windows 的 sfc机制可能警告一些系统文件被修改要求插入win2k的光盘,不理睬它。这个脚本是我从instmsiw.exe中修改得来的。
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  ;unmsi.inf
  ;;;;;;;;;;;;;;;;;
  [Version]
  signature = '$Windows NT$'
  Class = %ExceptionClassDesc%
  ClassGUID = {F5776D81-AE53-4935-8E84-B0B283D8BCEF}
  Provider = %Microsoft%
  CatalogFile = msi.cat
  ComponentId = {2E742517-5D48-4DBD-BF93-48FDCF36E634} ; GUID assigned to the Windows Installer
  DriverVer=03-13-2001, 2.0.2460.1
  
  [SourceDisksNames]
  1 = %msi_media%
  
  [SourceDisksFiles]
  msi.dll = 1
  msihnd.dll = 1
  msimsg.dll = 1
  msiexec.exe = 1
  msisip.dll = 1
  
  [DestinationDirs]
  Msi.SystemFiles = 11 ; %windir%system32
  Msi.DllCacheFiles = 11,dllcache ; %windir%system32dllcache
  
  [DefaultInstall]
  DelFiles = Msi.SystemFiles,Msi.DllCacheFiles
  
  ;
  ; COPYFLG_REPLACE_BOOT_FILE flag (0x1000) not necessary for
  ; files in the dllcache
  ;
  
  [Msi.DllCacheFiles]
  msi.dll
  msihnd.dll
  msimsg.dll
  msiexec.exe
  msisip.dll
  
  [Msi.SystemFiles]
  msi.dll
  msihnd.dll
  msimsg.dll
  msiexec.exe
  msisip.dll
  
  [Strings]
  Microsoft = 'Microsoft Corporation'
  msi_media = 'Microsoft Windows Installer Distribution Media'
  ExceptionClassDesc = 'Microsoft Windows Installer'
  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  
  (3) 重新启动,按F8键,进入带命令行的安全模式,执行下面的命令
  regsvr32 /u %windir%msi.dll
  del %windir%msi.dll
  
  (4) 重启动,运行instmsiw.exe,安装windows installer2.0 ,一切正常了。
  

更多相关: