OK!有必要试一试,我这里也找到了一些关于 Installer 报错的解决方案,希望对大家有所帮助!!5 X7 ^/ y) D3 V. N7 k$ ~5 w8 Z
关于Windows Installer服务出错解决方法
9 ?; h& j1 J9 l" P9 ^! N1 Z" {( }$ q# s方法一:
4 | O6 v9 K! j4 u) C卸载,重新安装windows installer服务
! K, A( i5 ^" d5 y8 y' J: B一、先用msiexec /unregserver 停掉windows installer服务。 z$ v# w2 t. f- v$ j4 m
二、下载InstMsiW.exe,用winrar解压开。进入目录。
! D8 Y n( S& r# ?4 o8 v3 x7 h三、右击msi.inf ,点击安装,右击mspatcha.inf ,点击安装。 4 k5 c5 Q+ }; j) x$ W
四、再用msiexec.exe /regserver 启用服务。 " ?8 z* M0 g$ I. m
方法二:3 l, h% H' M6 P r& v5 `5 }2 k
1.如果曾安装过ACDSee5.0(包括迷你中文版),卸载它。如果还不行就重装Windows
: X2 D% c7 b, qInstaller 或者ACDSee 4.0
2 G2 y, V' Z6 |2.运行cmd,然后运行sfc/scannow检查系统文件6 b c: T3 \+ r0 E
3.运行Services.msc,把Windows Installer 服务设置为手动运行,然后重新运行) C* h% W) u Q. @- Z
4.打开任务管理器,找到并结束ikernel.exe进程,重新安装
( P+ Y% v" \1 ]0 V/ x) o& I5.禁用杀毒软件的实时防护
0 E5 ? O" p9 B! v; d. i6.删除 C:\Program Files\Common Files\InstallShield\Engine\6\Intel 32这个文$ R5 e# i& h6 w8 C: \2 @- i
件夹中的所有文件,然后重启动电脑,重新运行安装程序
7 T% X9 y; |2 Q" U. {或者查看下面的网页:4 j6 I, g& x* v) K3 ?& R
安装程序安装出错解决方法之葵花宝典 moonet(翻译) R6 d0 g, ]5 K% \9 F
http://www.csdn.net/develop/article/18/18184.shtm 7 a, I' i* l4 y: N5 M
7 A0 M. N1 _* a" n1 S- q$ |$ `" X% X9 [
方法三:' i# Z/ V( _2 ]
这是由于一些软件制作的问题导致windows installer不能正常工作
n# A& l& g% u; J; j恢复步骤如下:. W4 ]' G& A6 o' I
1.再次安装windows installer2.0,运行instmsiw.exe5 N7 A# z L) D# e) C I2 {3 n
如果说"服务已经安装"然后直接退出安装就再跟着做,否则你重装就OK了!
5 r; L4 q: P# w. ]" C- N6 n2.删除注册表中的[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer]7 k4 }* c0 J/ J! s) z9 X W% F Y
然后运行instmsiw.exe: h2 _+ \* f+ L9 T" l
3.绝招:, V5 m" i) s% `6 z% }0 o
(1) 删除msiserver 服务& c! l+ }- M/ X2 o; ?3 e
运行regedit,删除下面的MSIServer 服务4 V3 _! {+ s1 \6 U
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer]
* W2 @. V6 ~6 `把下面的内容存为unmsiserver.reg 文件,然后双击左键,把它合并进注册表中% ~5 K8 t# g' s. l
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;/ J. L$ [ Z7 U" z# r% d1 W7 P
;unmsiserver.reg
' |4 e, E+ T, `, i9 X, I2 b' U. hWindows Registry Editor Version 5.00& @8 z, f5 i8 X: D4 b/ W
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer]0 n4 u# [/ A: o+ _6 ^3 K* z% a( t/ h
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;) X4 m: ^, O5 Q/ j4 z
(2) 删除msi 的文件
a& s. {7 H5 ]' m6 N) a8 E# l用下面的脚本存为一个unmsi.inf文件,然后在inf文件上右键单击install,就会删除一些msi的dll,这时windows 的 sfc机制可能警告一些系统文件被修改要求插入win2k的光盘,不理睬它。这个脚本是我从instmsiw.exe中修改得来的。8 r2 z( z# p P& G, O, q( }4 ]5 p
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
% M8 {# i6 |0 S;unmsi.inf; M3 \9 X# W9 O" i @" ^
;;;;;;;;;;;;;;;;;8 v5 b/ j! {( S5 ] i, ?
[Version]
8 x4 v9 f5 A; i1 S- ?+ C: Psignature = "$Windows NT$"
y3 e0 J; W6 g; I8 r( bClass = %ExceptionClassDesc%
: {. S. A" h8 X) [# w+ q; ~ClassGUID = {F5776D81-AE53-4935-8E84-B0B283D8BCEF}
) j* D( l' M0 J0 F: S# r! `Provider = %Microsoft%
6 e( c* Y% ]' _4 ]CatalogFile = msi.cat m) G: q# G0 k' V& g
ComponentId = {2E742517-5D48-4DBD-BF93-48FDCF36E634} ; GUID assigned to the Windows Installer
1 p' J2 i. o* u( S$ _' f5 PDriverVer=03-13-2001, 2.0.2460.1
9 k8 r4 Z7 m* Q4 F; V2 i[SourceDisksNames]
. \2 v3 p" ^. U- W1 = %msi_media%
# F, R v1 q$ Q. s1 [[SourceDisksFiles]
7 M3 y( i7 u7 Bmsi.dll = 1* E: K$ }4 Z. }5 K
msihnd.dll = 1
! }5 ~7 @' `8 d/ x! Qmsimsg.dll = 1, Q, D9 V% i0 h
msiexec.exe = 1* }. a! |" U0 I: K8 ~4 d+ d
msisip.dll = 1
3 k" {/ r- B$ ]; Y, c/ a. ]/ o4 O* o[DestinationDirs]( T; L# L3 k7 ]+ z
Msi.SystemFiles = 11 ; %windir%\system32
9 ]. i! F7 D1 H1 P+ D0 x- fMsi.DllCacheFiles = 11,dllcache ; %windir%\system32\dllcache
4 S6 s* `7 e5 M. u) D9 a; m. b. l+ u[DefaultInstall]/ x9 c5 P' C& N5 H8 `
DelFiles = Msi.SystemFiles,Msi.DllCacheFiles
5 W* ~: U. s+ D7 f( r& o;
) S3 G7 C* u9 T4 M. ]- e; |; COPYFLG_REPLACE_BOOT_FILE flag (0x1000) not necessary for7 z4 m* v5 x+ N1 c
; files in the dllcache
8 k7 l; l' d7 \2 ?; w- r;( V2 B# T& I7 c( ?) F* F' f
[Msi.DllCacheFiles]) g |+ I( B* o/ F! W) o0 k9 e
msi.dll B O& a0 V2 H5 U
msihnd.dll
/ f E! p7 W' j$ kmsimsg.dll
; j2 r) t8 n$ I; Mmsiexec.exe3 a0 }8 y. m% U, h: t) @7 u6 X# j
msisip.dll+ F# ~$ J% A Y# I4 h' R0 j- `
[Msi.SystemFiles]" I( C9 t2 Y; P; ` U* C6 s
msi.dll ' _7 @0 @4 C3 ]" F: C; Z9 T4 ?
msihnd.dll
3 i4 D6 a* i6 p: W y2 q% @2 b/ ], Ymsimsg.dll $ ^" J5 }9 x0 w' v4 Y( l1 n" n# z& u
msiexec.exe
3 C& Y3 m. U. F& {. @msisip.dll ) _% n6 c: n: w- e
[Strings]
( a2 ~" d0 `0 F$ ^Microsoft = "Microsoft Corporation"" L: d& T& z$ P$ b2 j8 O
msi_media = "Microsoft Windows Installer Distribution Media"$ O* F, ]1 a) w5 ~
ExceptionClassDesc = "Microsoft Windows Installer"
' Z9 t2 L' \; n;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;' w7 D2 H, t& C- ?* P3 c# A2 z1 x) w
(3) 重新启动,按F8键,进入带命令行的安全模式,执行下面的命令$ o, L8 `8 B; _% |- ?1 b9 x8 a
regsvr32 /u %windir%\msi.dll
& |$ `; G: A5 i7 f Tdel %windir%\msi.dll
6 K5 \% u3 L) _/ n! w: V3 n(4) 重启动,运行instmsiw.exe,安装windows installer2.0 ,一切OK。1 v% w2 e( A$ D- `
# D$ k% z' Z8 E4 g1 T& `***************************************************************************
& [) @( H5 j! q) F9 ?' ?近日在网上闲逛,发现Vmware出4.0版了。这可是我最喜欢用的虚拟机软件啊!赶快下载,却发现安装不上,系统提示“不能访问Windows Installer服务”。再试一次,还是如此。打开“管理工具”下的“服务”,找到Windows Installer,查看其属性,发现启动类型为“自动”,服务状态为“已停止”,心想可能是什么时候把服务关了吧,单击“启动”按钮,咦?无法启动了!Windows提示“在本地计算机无法启动 Windows Installer 服务。错误 5: 拒绝访问”。自动不行,就用手动!结果还是出现同样的提示!重新启动电脑后故障依旧,更严重的是,只要是使用MSI文件来安装的软件,现在都无法安装和卸载了!
( i3 L5 [/ m+ V3 {赶紧上网请教高手吧,论坛上支招的高人真不少,总结起来有四招:一是检查当前用户有没有管理员权限(但我的电脑只有Administrator一个用户);二是下载最新的Windows Installer 2.0版;三是结束进程IKERNEL.EXE后再安装;四是删除系统安装目录Program Files\Common Files\InstallShield\Engine下的所有文件再安装。
1 q2 q% C3 h2 s# I) f% o6 x# J! H我按照高手们所说的一一操作,但依旧无法进行安装!重试过很多次后,“拒绝访问”四个字提醒了我:难道是C盘访问权限的原因?我的硬盘是NTFS格式的,前一段时间RPC漏洞弄得人心惶惶,我打上了补丁后还不放心,删除了Everyone组,另添加了Administrator对硬盘的完全控制权。难道是这个原因?我试着在“C盘→属性→安全”选项卡下添加Everyone组后,启动Windows Installer服务,居然成功了! # o8 u: d5 p* h2 b
重试几次后发现,其实只需要给Everyone组赋予“读取及运行”、“列出文件夹目录”、“读取”三项权限其中之一,就可以解决Windows Installer无法启动的问题。如果顾及隐私和安全问题的话,只赋予Everyone组“列出文件夹目录”权限即可。使用Windows 2000/XP和NTFS分区的朋友们,如果你的Windows Installer也出了问题,可别忘了我的这番经历哦! 4 B' a. `! N& ^$ O0 ?5 z8 \& i3 E
**************************************************************************4 W$ n, J8 i/ e$ z% J
一、先用msiexec /unregserver 停掉windows installer服务。
/ p4 b7 n2 ]5 i8 e" v- k二、下载InstMsiW.exe,用winrar解压开。进入目录。
6 N" G. r0 i* [6 }- N三、右击msi.inf ,点击安装,右击mspatcha.inf ,点击安装。
( p3 n2 C) l: ?9 H( s5 X四、再用msiexec.exe /regserver 启用服务。3 \- Q, L3 D" i3 |
问题二:2 r; v# w0 z/ y; P+ i; S
以上的问题解决后,在我安装vpc的时候,又碰到这个问题:Error -1607: Unable to Install InstallShield Scripting Run Time
8 H2 {* e h" U: N查了相关的资料后,发现我安装的系统里没有ISScript.exe.# k% b9 R1 T2 z0 M$ S
所以我下载并更新了IkernelUpdate.exe and IsScript7x.zip...问题就解决了。& X# i. z( Q8 }) u3 A
当然很多时候出错的原因不一定相同,解决的方法也不一定一样,我只是把我的解决方法拿出来,算是一个参考。
6 \- q. e" ~; t8 m9 u************************************************************************** T% J+ O* A; B
Windows XP解决过程: & t0 t. \+ q1 ?: S! L
Windows XP集成了最新版本的Windows Installer v2.0,但在Windows XP里安装MSI程序也会经常出现”找不到windows installer服务”“的错误。 ) r h% K E8 S! c& _' }
第一步:使用记事本编写installer.reg文件,内容如下:
0 m; v' s9 s8 i7 fWindows Registry Editor Version 5.00
/ I8 S& y5 w* k ~% q[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer] 1 ^0 x- C5 R% p" o
"ImagePath"=-
9 j6 d& E3 Y$ z6 Z; S+ m3 n"ImagePath"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,\ + n! f9 T, h r0 f2 H& e4 N: Q
74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,6d,\
7 p6 L$ `% L7 K00,73,00,69,00,65,00,78,00,65,00,63,00,2e,00,65,00,78,00,65,00,20,00,2f,00,\
6 k" }# B K* p56,00,00,00 3 |5 O. k( t* y" o
然后将文件保存为”.reg“格式,双击该文件,将文件内容导入注册表。 . D5 p0 T5 F" V/ c
第二步:重新启动电脑进入安全模式(启动时按F8键),然后点击”开始-->运行“,输入”CMD“命令,在弹出的”CMD命令提示符“窗口中输入”msiexec /regserver“,最后重新启动系统即可。 |