Windows 安裝IIS出現的問題(無法安裝IIS,提示“安裝程序無法復
2024-09-10 00:05:44
供稿:網友
這就是典型的windows安全數據庫出問題了,可以用以下方法來解決這個問題:
Windows安全資料庫,在%WinDir%/Security/database里。
臺灣的資料庫,大陸稱為數據庫。 在Windows作業系統里帶有專門的Esentutl.exe工具,這是一個DOS工具,可用來查看和修復Windows安全資料庫。
比如我有一次在安裝IIS的元件時,發生了錯誤:
************************
復制錯誤 安裝程式無法復制檔 iisapp.vbs。 請確認下面指定的位置是正確的,或者更改它并在指定的驅動器中插入 'Service Pack 1 CD-ROM'。
當復制來源: C:/Windows/ServicePackFiles/i386 [瀏覽] [重試] [取消]
************************
這就是由于Windows安全資料庫損壞所致。可用Esentutl.exe進行修復。
查看它的用法,用下面指令: esentutl /? 會顯示如下提示:
Microsoft(R) Windows(R) Database Utilities Version 5.2 Copyright (C) Microsoft Corporation. All Rights Reserved. DESCRIPTION: Maintenance utilities for Microsoft(R) Windows(R) databases. MODES OF OPERATION: Defragmentation: ESENTUTL /d [options] Recovery: ESENTUTL /r [options] Integrity: ESENTUTL /g [options] Checksum: ESENTUTL /k [options] Repair: ESENTUTL /p [options] File Dump: ESENTUTL /m[mode-modifier] <<<<< Press a key for more help >>>>>
D=Defragmentation, R=Recovery, G=inteGrity, K=checKsum, P=rePair, M=file duMp =>
可見,檢查資料庫的完整性,要用/g,比如: esentutl /g C:/Windows/security/database/secedit.sdb
若要修復這個Windows安全資料庫,用如下指令: esentutl /p C:/Windows/security/database/secedit.
用ESEnTUtl工具修復系統數據庫1
Windows具有大量互相關聯的數據庫。當然,主要的數據庫就是注冊表,其中包含了系統、用戶以及應用程序設置的全部信息。然而,Windows還包含大量你通常沒有聽說過的其他數據庫。這些數據庫以系統數據庫文件形式保存,后綴為SDB。其中一些記錄了應用程序的安裝。你會發現通常他們的文件名為Setup.SDB。另一些記錄了Service Pack的狀態,具有類似這樣的文件名:AppHelp.SDB, AppH_SP.SDB, DrvMain.SDB, MSIMain.SDB以及SysMain.SDB。還有其他的數據庫來跟蹤安全或其他不在注冊表中顯示的系統設置,如SecEdit.SDB。簡而言之,Windows在除注冊表以外的地方隱藏了大量的信息。你可以用“可擴展存儲引擎技術工具“(Extensible Storage Engine Technology Utility, ESEnTUtl)來訪問所有這些其他數據庫。
并不是你硬盤上每個SDB文件都是數據庫。混亂的是微軟也把SDB擴展名用在一些文本文件上。比如,Visual Studio的Setup.SDB就是個文本文件。該文件能夠告訴你許多關于應用的信息,但這些信息不是ESEnTUtl能夠管理的格式。正確的SDB文件包括二進制數據。
警告:ESEnTUtl工具極端強大。在錯誤的文件上不正確地應用,會抹去安全信息或者使你的系統無法啟動。因此,在你使用它之前確保你完全理解該工具。在修改任何數據庫之前記得先做備份。在做之前通過微軟知識庫(Microsoft Knowledge Base)盡可能多地驗證這些修改。