徵狀
當您升級為 Windows Installer 2.0 版後,Windows Installer 服務可能不會啟動,而且出現下列錯誤訊息:
The Windows Installer Service could not be accessed.This can occur if you are running Windows in safe mode, or the Windows Installer is not correctly installed.Contact your support personnel for assistance. (無法存取 Windows Installer 服務。在安全模式下執行 Windows 或 Windows Installer 安裝不當時,可能出現這個問題。請洽支援人員。)
注意 下列產品沒有這個問題:
-
Microsoft Windows XP
-
Microsoft Windows Millennium Edition
-
Microsoft Windows 98
發生的原因
如果下列任一情況存在,便可能發生此問題:
-
DCOM 權限的預設驗證等級設定為 [無],而且預設 [模擬] 等級設定為 [匿名]。
-
系統帳戶沒有 Windows Installer 嘗試存取之資料夾或登錄機碼的「完整權限」。這個完整權限是 NTFS 特有的。
解決方案
您可以根據問題的類型,使用下列一種或所有的方法:
-
方法 1:取消登錄並重新登錄 Windows Installer。
-
方法 2:檢查 DCOM 權限。
-
方法 3:讓 SYSTEM 帳戶擁有「完全控制」權限。
-
方法 4:檢查登錄權限。
-
方法 5:修正損壞的 MsiServer 服務安全性金鑰。
開始之前:確認已安裝 Service Pack
如果您使用的是 Windows 2000,請確定已安裝 SP 2。
如果您使用的是 Windows NT 4.0,請確定已安裝 SP 6。 如果尚未安裝適當的 Service Pack,本文〈其他相關資訊〉一節中的步驟可能無法正常運作。其他相關資訊
方法 1:取消登錄並重新登錄 Windows Installer
-
按一下 [開始],再按一下 [執行],輸入
MSIEXEC /UNREGISTER,然後按一下 [確定]。即使您正確地執行這項操作,看起來卻好像沒有發生事情。 -
按一下 [開始],再按一下 [執行],輸入
MSIEXEC /REGSERVER,然後按一下 [確定]。即使您正確地執行這項操作,看起來卻好像沒有發生事情,或者您可能會看到沙漏出現一下子。在您執行此命令之後,該作業就完成了。 -
重試您的 Windows Installer 應用程式。
方法 2:檢查 DCOM 權限
這個方法會將 DCOM 預設模擬等級變更為「識別」、移除 Msisip.dll 檔,然後重新安裝 Windows 2000 SP3。
如果要執行這項操作,請依照下列步驟執行:-
按一下 [開始],再按一下 [執行],輸入 dcomcnfg,然後按一下 [確定]。
-
[預設內容] 索引標籤:
-
在 [預設驗證等級] 清單中,按一下 [連線]。
-
在 [預設模擬等級] 清單中,按一下 [識別],再按 [確定]。
-
-
按一下 [開始],再按 [執行],輸入 explorer /select, %windir%\system32\msisip.dll,然後按一下 [確定]。
-
將 Msisip.dll 檔重新命名為
Msisip.old。 -
重新安裝 Windows 2000 Service Pack 3。
方法 3:讓 SYSTEM 帳戶擁有「完全控制」權限
-
啟動 [Windows 檔案總管],對電腦的根硬碟按滑鼠右鍵,然後按一下 [內容] 。
-
按一下 [安全性] 索引標籤,再按 [新增]。
-
在 [選取使用者、電腦或群組] 對話方塊中,依序按下 [SYSTEM 帳戶]、[新增] 以及 [確定]。
-
按一下 [允許] 下的 [完全控制] 核取方塊,然後按一下 [確定]。
-
按一下 TEMP 資料夾,確認 SYSTEM 帳戶已擁有完全控制權限。
方法 4:檢查登錄權限
-
按一下 [開始],再按 [執行],輸入 Regedt32。
-
對每一個登錄 Hive,執行下列步驟:
-
選取 Hive。
-
Windows XP 的使用者,請在 [編輯] 功能表上按一下 [權限]。
Windows 2000 和 Windows NT 4 的使用者,請在 [安全性] 功能表上按一下 [權限]。
-
-
確認已確實新增 SYSTEM 帳戶,且其擁有「完全控制」權限。如果沒有,請新增擁有「完全控制」權限的 SYSTEM 帳戶。
方法 5:修正損壞的 MsiServer 服務安全性金鑰
-
使用 Windows 2000 啟動電腦。
-
按一下 [開始],再按一下 [執行],輸入 regedit.exe,然後將下列機碼重新命名為 Old_Security:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSIServer\Security
-
重新啟動電腦 (必須執行)。
-
重新執行 installer 2.0 的 Instmsiw.exe,如此能夠更正損壞的 MSI 服務安全性金鑰。