Windows安装IIS出现的问题(无法安装IIS,提示“安装程序无法复制文件IISApp.vbs”)
2023-06-13 09:14:08 时间
这就是典型的windows安全数据库出问题了,可以用以下方法来解决这个问题:
Windows安全资料库,在%WinDir%\Security\database里。
台湾的资料库,大陆称为数据库。在Windows作业系统里带有专门的Esentutl.exe工具,这是一个DOS工具,可用来查看和修复Windows安全资料库。
比如我有一次在安装IIS的元件时,发生了错误:
************************
复制错误安装程式无法复制档iisapp.vbs。请确认下面指定的位置是正确的,或者更改它并在指定的驱动器中插入"ServicePack1CD-ROM"。
当复制来源:C:\Windows\ServicePackFiles\i386[浏览][重试][取消]
************************
这就是由于Windows安全资料库损坏所致。可用Esentutl.exe进行修复。
查看它的用法,用下面指令:esentutl/?会显示如下提示:
Microsoft(R)Windows(R)DatabaseUtilitiesVersion5.2Copyright(C)MicrosoftCorporation.AllRightsReserved.DESCRIPTION:MaintenanceutilitiesforMicrosoft(R)Windows(R)databases.MODESOFOPERATION:Defragmentation:ESENTUTL/d[options]Recovery:ESENTUTL/r[options]Integrity:ESENTUTL/g[options]Checksum:ESENTUTL/k[options]Repair:ESENTUTL/p[options]FileDump:ESENTUTL/m[mode-modifier]<<<<<Pressakeyformorehelp>>>>>
D=Defragmentation,R=Recovery,G=inteGrity,K=checKsum,P=rePair,M=fileduMp=>
可见,检查资料库的完整性,要用/g,比如:esentutl/gC:\Windows\security\database\secedit.sdb
若要修复这个Windows安全资料库,用如下指令:esentutl/pC:\Windows\security\database\secedit.
用ESEnTUtl工具修复系统数据库1
Windows具有大量互相关联的数据库。当然,主要的数据库就是注册表,其中包含了系统、用户以及应用程序设置的全部信息。然而,Windows还包含大量你通常没有听说过的其他数据库。这些数据库以系统数据库文件形式保存,后缀为SDB。其中一些记录了应用程序的安装。你会发现通常他们的文件名为Setup.SDB。另一些记录了ServicePack的状态,具有类似这样的文件名:AppHelp.SDB,AppH_SP.SDB,DrvMain.SDB,MSIMain.SDB以及SysMain.SDB。还有其他的数据库来跟踪安全或其他不在注册表中显示的系统设置,如SecEdit.SDB。简而言之,Windows在除注册表以外的地方隐藏了大量的信息。你可以用“可扩展存储引擎技术工具“(ExtensibleStorageEngineTechnologyUtility,ESEnTUtl)来访问所有这些其他数据库。
并不是你硬盘上每个SDB文件都是数据库。混乱的是微软也把SDB扩展名用在一些文本文件上。比如,VisualStudio的Setup.SDB就是个文本文件。该文件能够告诉你许多关于应用的信息,但这些信息不是ESEnTUtl能够管理的格式。正确的SDB文件包括二进制数据。
警告:ESEnTUtl工具极端强大。在错误的文件上不正确地应用,会抹去安全信息或者使你的系统无法启动。因此,在你使用它之前确保你完全理解该工具。在修改任何数据库之前记得先做备份。在做之前通过微软知识库(MicrosoftKnowledgeBase)尽可能多地验证这些修改。
ESEnTUtl工具并不为你提供很多帮助信息。实际上,你很难在所有Windows帮助文件或者很多其他微软的资源中找到提及该工具的地方。你能找到提到它的一个地方就是微软知识库。许多Windows问题需要你用ESEnTUtl工具来修复。你可以通过用“ESEnTUtlsite:support.microsoft.com”作为关键字在Google搜索到来自微软知识库的一些有关该工具使用的例子。
ESEnTUtl运行有几种模式。每种模式对SDB文件执行不同的任务。这里是每种模式的语法:
碎片整理模式:ESEnTUtl/d<数据库文件名>[选项]
恢复模式:ESEnTUtl/r[选项]
完整性检查模式:ESEnTUtl/g<数据库文件名>[选项]
修复模式:ESEnTUtl/p<数据库文件名>[选项]
校验模式:ESEnTUtl/k<数据库文件名>[选项]
文件转储模式:ESEnTUtl/m[模式修改符]<文件名>
复制模式:ESEnTUtl/y<源文件>[选项]***仅用于Vista操作系统***
上述选项根据模式而不同。然而,有些选项在所有模式中通用。这里是通用选项:
/8定义数据库分页大小为8KB。正常情况下,ESEnTUtl自动检测分页大小。只有当微软知识库告诉你或者读取数据库遇到问题时才使用该选项。
/o禁用微软徽标。你可以用该选项来创建报表输出或者作为另一个数据库的输入。
/s<流文件名>为流数据输出设置文件名。默认设置是NONE。当你想用流数据技术——而不是简单的转储——来发送数据时使用该选项。该选项适用于碎片整理、完整性检查、修复以及文件转储模式。
/t<数据库文件名>设置临时数据库文件名。默认设置是TEMP-DFRG*.EDB。通常,你无需更改数据库文件名因为ESEnTUtl已经支持多个临时数据库。该选项适用于碎片整理、完整性检查以及修复模式。
注意:某些模式针对不同的目的使用同样的选项开关。因此,不要假定在碎片整理模式中的/f开关和完整性检查模式的/f开关执行同样的任务。
Windows安全资料库,在%WinDir%\Security\database里。
台湾的资料库,大陆称为数据库。在Windows作业系统里带有专门的Esentutl.exe工具,这是一个DOS工具,可用来查看和修复Windows安全资料库。
比如我有一次在安装IIS的元件时,发生了错误:
************************
复制错误安装程式无法复制档iisapp.vbs。请确认下面指定的位置是正确的,或者更改它并在指定的驱动器中插入"ServicePack1CD-ROM"。
当复制来源:C:\Windows\ServicePackFiles\i386[浏览][重试][取消]
************************
这就是由于Windows安全资料库损坏所致。可用Esentutl.exe进行修复。
查看它的用法,用下面指令:esentutl/?会显示如下提示:
Microsoft(R)Windows(R)DatabaseUtilitiesVersion5.2Copyright(C)MicrosoftCorporation.AllRightsReserved.DESCRIPTION:MaintenanceutilitiesforMicrosoft(R)Windows(R)databases.MODESOFOPERATION:Defragmentation:ESENTUTL/d[options]Recovery:ESENTUTL/r[options]Integrity:ESENTUTL/g[options]Checksum:ESENTUTL/k[options]Repair:ESENTUTL/p[options]FileDump:ESENTUTL/m[mode-modifier]<<<<<Pressakeyformorehelp>>>>>
D=Defragmentation,R=Recovery,G=inteGrity,K=checKsum,P=rePair,M=fileduMp=>
可见,检查资料库的完整性,要用/g,比如:esentutl/gC:\Windows\security\database\secedit.sdb
若要修复这个Windows安全资料库,用如下指令:esentutl/pC:\Windows\security\database\secedit.
用ESEnTUtl工具修复系统数据库1
Windows具有大量互相关联的数据库。当然,主要的数据库就是注册表,其中包含了系统、用户以及应用程序设置的全部信息。然而,Windows还包含大量你通常没有听说过的其他数据库。这些数据库以系统数据库文件形式保存,后缀为SDB。其中一些记录了应用程序的安装。你会发现通常他们的文件名为Setup.SDB。另一些记录了ServicePack的状态,具有类似这样的文件名:AppHelp.SDB,AppH_SP.SDB,DrvMain.SDB,MSIMain.SDB以及SysMain.SDB。还有其他的数据库来跟踪安全或其他不在注册表中显示的系统设置,如SecEdit.SDB。简而言之,Windows在除注册表以外的地方隐藏了大量的信息。你可以用“可扩展存储引擎技术工具“(ExtensibleStorageEngineTechnologyUtility,ESEnTUtl)来访问所有这些其他数据库。
并不是你硬盘上每个SDB文件都是数据库。混乱的是微软也把SDB扩展名用在一些文本文件上。比如,VisualStudio的Setup.SDB就是个文本文件。该文件能够告诉你许多关于应用的信息,但这些信息不是ESEnTUtl能够管理的格式。正确的SDB文件包括二进制数据。
警告:ESEnTUtl工具极端强大。在错误的文件上不正确地应用,会抹去安全信息或者使你的系统无法启动。因此,在你使用它之前确保你完全理解该工具。在修改任何数据库之前记得先做备份。在做之前通过微软知识库(MicrosoftKnowledgeBase)尽可能多地验证这些修改。
ESEnTUtl工具并不为你提供很多帮助信息。实际上,你很难在所有Windows帮助文件或者很多其他微软的资源中找到提及该工具的地方。你能找到提到它的一个地方就是微软知识库。许多Windows问题需要你用ESEnTUtl工具来修复。你可以通过用“ESEnTUtlsite:support.microsoft.com”作为关键字在Google搜索到来自微软知识库的一些有关该工具使用的例子。
ESEnTUtl运行有几种模式。每种模式对SDB文件执行不同的任务。这里是每种模式的语法:
碎片整理模式:ESEnTUtl/d<数据库文件名>[选项]
恢复模式:ESEnTUtl/r[选项]
完整性检查模式:ESEnTUtl/g<数据库文件名>[选项]
修复模式:ESEnTUtl/p<数据库文件名>[选项]
校验模式:ESEnTUtl/k<数据库文件名>[选项]
文件转储模式:ESEnTUtl/m[模式修改符]<文件名>
复制模式:ESEnTUtl/y<源文件>[选项]***仅用于Vista操作系统***
上述选项根据模式而不同。然而,有些选项在所有模式中通用。这里是通用选项:
/8定义数据库分页大小为8KB。正常情况下,ESEnTUtl自动检测分页大小。只有当微软知识库告诉你或者读取数据库遇到问题时才使用该选项。
/o禁用微软徽标。你可以用该选项来创建报表输出或者作为另一个数据库的输入。
/s<流文件名>为流数据输出设置文件名。默认设置是NONE。当你想用流数据技术——而不是简单的转储——来发送数据时使用该选项。该选项适用于碎片整理、完整性检查、修复以及文件转储模式。
/t<数据库文件名>设置临时数据库文件名。默认设置是TEMP-DFRG*.EDB。通常,你无需更改数据库文件名因为ESEnTUtl已经支持多个临时数据库。该选项适用于碎片整理、完整性检查以及修复模式。
注意:某些模式针对不同的目的使用同样的选项开关。因此,不要假定在碎片整理模式中的/f开关和完整性检查模式的/f开关执行同样的任务。
相关文章
- Windows系统日志分析_windows日志命令
- Windows编译ollvm_windows交叉编译linux
- Windows安装和配置Python及pip.ini文件配置
- windows上传ipa文件到app store的方法
- clash for windows编程辅助代理工具附文件
- Centos中安装lrzsz 实现windows与Linux间文件互传
- 通达信电脑版(windows)主图添加地域、行业、概念、风格等信息步骤
- VMware WorkStation 16 Pro虚拟机安装Windows 11
- 怎样共享windows和linux之间的文件详解程序员
- Node.js安装及环境配置之Windows篇详解编程语言
- windows激活Windows:Linux下的秘诀(linux激活)
- redis加入到Windows 服务详解编程语言
- 安装Linux虚拟机:在Windows系统中的新体验(windows安装linux虚拟机)
- Windows中安装macOS:让你在同一台电脑上实现双系统切换(windows安装macos)
- 文件Linux访问Windows共享文件:实现双系统互通(linux访问windows共享)
- 在Windows环境下实现Redis服务安装(windows下安装redis)
- 和windows简单实用:同时装双系统Linux和Windows(电脑装双系统linux)
- 在Windows上安装Linux:体验双系统的乐趣(windows安装linux)
- Windows上安装MongoDB:一步一步分解(windows安装mongodb)
- 通过Linux在台式机上安装Windows的指南(linux安装windows)
- 在Linux系统中安装Windows:自由选择的另一种可能性(linux下安装windows)