5 {) t% h2 v* X0 t8 k# N卸载,重新安装windows installer服务 3 i7 p9 h5 w: M0 L! t! o3 R$ L" ~) M" s$ u, U' H+ s
一、先用msiexec /unregserver 停掉windows installer服务。 ' i2 z) K, h3 i& D! l: ~( b/ Y, o+ H
二、下载InstMsiW.exe,用winrar解压开。进入目录。 " A- m1 k Q6 v5 D* g
三、右击msi.inf ,点击安装,右击mspatcha.inf ,点击安装。 + j7 d1 b3 C2 O
四、再用msiexec.exe /regserver 启用服务。 8 ?( |. ~" E- d# r' |+ E5 d$ R
; X& }( K+ }, [. B
方法二:1 X% L% _7 k- y
3 P* g7 L, s. @+ |4 h
1.如果曾安装过ACDSee5.0(包括迷你中文版),卸载它。如果还不行就重装Windows4 D/ y7 J j8 F/ |/ w V
Installer 或者ACDSee 4.0 " H+ T% D* H/ b& l! V# Q8 R9 Y2.运行cmd,然后运行sfc/scannow检查系统文件3 h8 b7 C/ k8 G1 y
3.运行Services.msc,把Windows Installer 服务设置为手动运行,然后重新运行 ; U$ r+ T, p" r4.打开任务管理器,找到并结束ikernel.exe进程,重新安装# y- ?9 t! J8 T }7 [
5.禁用杀毒软件的实时防护6 \9 v3 e! g5 w" ] S- g
6.删除 C:\Program Files\Common Files\InstallShield\Engine\6\Intel 32这个文 & u* Y) L0 G) W8 V0 m! P$ Q, w件夹中的所有文件,然后重启动电脑,重新运行安装程序# h4 \+ ^5 e, O6 D
E9 v& T C8 s8 T* x
或者查看下面的网页:3 i2 E* c4 [8 X! A0 D
5 r1 ]) ^% m" g _安装程序安装出错解决方法之葵花宝典 moonet(翻译) . H, b) [( } V" vhttp://www.csdn.net/develop/article/18/18184.shtm( o) b0 A5 K' I: O
& {0 D1 c* ^6 m$ _/ [# v4 M
+ q! R/ ~+ B' e: y
方法三:' {* n% m# A. X+ }, T- ^
3 i' X+ p, {' T/ i; c
这是由于一些软件制作的问题导致windows installer不能正常工作 9 y6 X+ z$ F9 n7 ?/ E! I恢复步骤如下:+ V2 G3 J' a! Z
* x t$ t+ t* [1 o4 z6 s* H1.再次安装windows installer2.0,运行instmsiw.exe 8 `- {; a; z1 J+ k8 Y6 h' l如果说"服务已经安装"然后直接退出安装就再跟着做,否则你重装就OK了! 6 H! i s* J& d' M8 `. [& H0 n3 s0 i G) \! x$ o- F
2.删除注册表中的[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer]6 [# L7 [& H: Q( E: ^
然后运行instmsiw.exe 6 [; e C+ C1 n" X 1 a4 G- R ]& ~/ a. C- ?3.绝招:6 L. {6 O$ `& Y3 r) ?# R
(1) 删除msiserver 服务 - O; q% J _% x; Z8 s4 w) g运行regedit,删除下面的MSIServer 服务 7 [/ v1 j6 C5 R! A[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer] 3 j) [9 i: K5 b4 X5 s$ Z把下面的内容存为unmsiserver.reg 文件,然后双击左键,把它合并进注册表中 - x' v% b) t" [+ n! e; j;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;. H: g: j8 I) v( M/ I
;unmsiserver.reg $ n3 M8 X X: `7 s2 E* o, wWindows Registry Editor Version 5.008 f; V9 d: v0 q# n) l7 F7 u
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer]7 s/ U$ S0 A7 v3 j
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 1 t% c: ?+ S2 H6 m3 \* \9 V7 ?# H* p % P: J! S6 r& X(2) 删除msi 的文件 2 V7 H! ^$ a9 l6 n9 D用下面的脚本存为一个unmsi.inf文件,然后在inf文件上右键单击install,就会删除一些msi的dll,这时windows 的 sfc机制可能警告一些系统文件被修改要求插入win2k的光盘,不理睬它。这个脚本是我从instmsiw.exe中修改得来的。 # B( ?8 N5 _- ?+ m7 t;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + {9 A) V- Y8 j8 j$ \- s; j# A" L;unmsi.inf; `" a' w) P9 D4 T8 C( U
;;;;;;;;;;;;;;;;; 9 v _7 w& Q1 b9 G2 w3 d[Version]7 H. S, g" h" {! A$ H
signature = "$Windows NT$" & |* g3 B9 b* I/ R% o2 ~Class = %ExceptionClassDesc%2 H+ g6 P9 S/ r( V1 O% s7 p0 y
ClassGUID = {F5776D81-AE53-4935-8E84-B0B283D8BCEF}" x$ u4 }8 V( L) l
Provider = %Microsoft% 0 `6 h4 n m" k+ X3 w9 ~. I) ~9 C+ z3 yCatalogFile = msi.cat7 o; T. r# _5 B8 ^
ComponentId = {2E742517-5D48-4DBD-BF93-48FDCF36E634} ; GUID assigned to the Windows Installer , }% S. [) k$ u0 I/ L) \' GDriverVer=03-13-2001, 2.0.2460.1 5 n- Z( M& z% p+ }: b7 ~- r4 J0 w: H! b( l$ t
[SourceDisksNames]' E) d6 H; w: C+ P* H
1 = %msi_media%6 ~4 m" Y( _, M/ C/ W
4 Z* y3 F! `& N3 h; ?) \7 r[SourceDisksFiles]& C4 {2 g1 L6 S. h; G3 r- T
msi.dll = 1 ) H1 S1 V. M- ~* }4 n+ Dmsihnd.dll = 11 d/ J( s4 P+ p! i" g X; ^
msimsg.dll = 1$ @* C8 s, t0 E, E: j- h
msiexec.exe = 1 U% i* J$ z# W2 w& f7 U4 y# ?
msisip.dll = 14 X7 v. Q2 g; F
# ~* V2 s* b) ]2 t, ^3 g4 V! q6 l[DestinationDirs]+ b0 u$ m, u! b3 h& x. |7 B5 o% H' @
Msi.SystemFiles = 11 ; %windir%\system32 & _# w+ k6 s) M9 }9 x0 xMsi.DllCacheFiles = 11,dllcache ; %windir%\system32\dllcache( f7 |9 N- M6 r$ g/ u' w
" Q* T& d* U) z8 x
[DefaultInstall] ' U# o! p$ W* z. y: UDelFiles = Msi.SystemFiles,Msi.DllCacheFiles h- d# K' N# m8 C' ~( T
' e. G# y1 P o3 B' G* r2 X, C;/ a, k7 n. v! E [# l& P
; COPYFLG_REPLACE_BOOT_FILE flag (0x1000) not necessary for 9 }9 W1 N8 p- D* \: f; files in the dllcache) Q( t# L. X- A
;: U% E, t' r m7 Q/ p% @
7 a1 f+ r1 _) R6 q" n$ @* B[Msi.DllCacheFiles] 6 S) P z5 L; y P$ V# m* e$ `msi.dll& m% n: i( `% v9 U2 J, a
msihnd.dll9 k- i4 t) m! R' ?& P
msimsg.dll 0 a( a/ z4 T t1 r7 `msiexec.exe; C! m/ E. J' K6 f0 h
msisip.dll 8 S7 M4 {! s; O% O N5 D2 ~# @' @! ~8 u9 k2 p& u& g4 L* G0 Z
[Msi.SystemFiles]- _# J9 s* c n" m5 A
msi.dll ; W, P4 U6 s4 M( c# `( h0 W8 _8 @msihnd.dll # ^" H) u' o% U, L% W+ S0 \; j( m
msimsg.dll % a2 B7 c/ m3 H& G' c( ?$ A: s" C; \: l( i
msiexec.exe ! e) T: ^, {: @. V9 h, x& L3 `4 W* imsisip.dll + i# V+ O, Q7 n' s4 v1 g6 C* ?" h- A* ]% L. ?
[Strings] ! s9 w2 Y6 l* _ A/ iMicrosoft = "Microsoft Corporation" + b# U L- m( c6 p/ Omsi_media = "Microsoft Windows Installer Distribution Media"0 ?, R* l$ e! n: k9 _. x
ExceptionClassDesc = "Microsoft Windows Installer" 8 i, q; |4 u, H% q5 m6 }; [;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; : s2 b8 c! {+ Q9 D( _6 _; T; R9 f. M- c; G0 u7 t2 W
(3) 重新启动,按F8键,进入带命令行的安全模式,执行下面的命令 ! h9 w2 v/ s; x2 F0 Bregsvr32 /u %windir%\msi.dll : f/ H* j- s9 X; `) m! qdel %windir%\msi.dll 8 ^, l2 w0 o. Z. ]$ ^7 i& n4 l# O' y2 j
(4) 重启动,运行instmsiw.exe,安装windows installer2.0 ,一切正常了。$ n/ C9 Z4 `+ F3 N 作者: 月洌 时间: 2004-5-7 12:08
提示: 作者被禁止或删除 内容自动屏蔽作者: 煎饼 时间: 2004-5-7 12:49