不知何故,我的 Windows XP 机器上的 MetaBase.bin 已损坏。我曾多次尝试卸载并重新安装 IIS。我确实在这里看到了在 WinXP 机器上重新安装 IIS 的帖子,我确保完全遵循,但是在卸载 IIS 后,Inetserv 文件夹没有被完全删除,它被留下了。
MetaBase.bin aqadmin.dll aqueue.dll seos.dll
每当我删除这些文件时,它们都会立即重新出现。
当我尝试重新安装 IIS 时,我会看到:
iis6.log
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:ProcessSection.[register_iis_core_dcom].Start.
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=74...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=76...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=86...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:Calling ProcessSection:register_iis_core_dcom:End.return=1
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=47...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:ProcessEntry_If:check if [51=6]
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=5...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:Calling ProcessSection:register_iis_core_fillmetabase:Start.
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:ProcessSection.[register_iis_core_fillmetabase].Start.
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=106...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:SetAdminACL:(/)Start.
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:SetAdminACL:Write the new security descriptor to the Metabase:Start.
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:SetAdminACL: At this point we have already been able to write basic entries to the metabase, so...
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:SetAdminACL: If this has a problem then there is a problem with setting up encryption for the metabase (Crypto).
[3/10/2010 19:3:2] OC_COMPLETE_INSTALLATION:iis_core:WriteSDtoMetaBase:Start.
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:MyMessageBox: Title:IIS Setup Error, Msg:CoGetClassObject
0x80080005=Server execution failed
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:WriteSDtoMetaBase:End. Return=0x80080005
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:SetAdminACL:Write the new security descriptor to the Metabase:End.
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:SetAdminACL(/):End.
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:MyMessageBox: Title:IIS Setup Error, Msg:Do you want to retry?
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=86...
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=2...
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:------------------
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:CallProcedureInDll(C:\WINDOWS\system32\inetsrv\iislog.dll): DllRegisterServer
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:iOleInitialize: Succeeded: 0. MakeSure to call OleUninitialize.
[3/10/2010 19:3:32] OC_COMPLETE_INSTALLATION:iis_core:CallProcedureInDll: Calling 'DllRegisterServer'.Start
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:MyMessageBox: Title:IIS Setup Error, Msg:Error calling procedure 'DllRegisterServer()' in file 'C:\WINDOWS\system32\inetsrv\iislog.dll'.
0x8000ffff=Catastrophic failure
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:!FAIL!
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:CallProcedureInDll: Calling 'DllRegisterServer'.End.FAILED. Err=8000ffff.
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:------------------
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:MyMessageBox: Title:IIS Setup Error, Msg:Do you want to retry?
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=86...
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=84...
[3/10/2010 19:4:3] OC_COMPLETE_INSTALLATION:iis_core:MigrateInfSectionToMD:(CORE_REG_IIS3_UPGRADE)Start.
[3/10/2010 19:4:33] OC_COMPLETE_INSTALLATION:iis_core:MyMessageBox: Title:IIS Setup Error, Msg:CoGetClassObject
0x80080005=Server execution failed
[3/10/2010 19:4:33] OC_COMPLETE_INSTALLATION:iis_core:MigrateInfSectionToMD(CORE_REG_IIS3_UPGRADE):End.
[3/10/2010 19:4:33] OC_COMPLETE_INSTALLATION:iis_core:...ProcessEntry:100=84...
[3/10/2010 19:4:33] OC_COMPLETE_INSTALLATION:iis_core:MigrateInfSectionToMD:(CORE_REG)Start.
[3/10/2010 19:5:3] OC_COMPLETE_INSTALLATION:iis_core:MyMessageBox: Title:IIS Setup Error, Msg:CoGetClassObject
0x80080005=Server execution failed
在事件查看器中
事件 ID:7023 IIS 管理服务因以下错误而终止:数据无效。
事件 ID:10010 服务器 {A9E69610-B80D-11D0-B9B9-00A0C922E750} 未在要求的超时内向 DCOM 注册。
看起来问题发生在尝试在元数据库中写入加密信息时,即 iis_core:WriteSDtoMetaBase:Start。我建议你卸载 IIS。重命名 MachineKeys,即以 c23 和 7a4 开头的 machinekeys。然后尝试重新安装 IIS。
希望这可以帮助。
系统还原实际上可以解决这个问题……令人惊讶。