分类: WINDOWS
2009-10-22 22:25:31
2007-10-10 15:13:08 Error MWUSSetup InstallWsus: MWUS Installation Failed (Error 0x80070643: 安装时发生严重错误)
2007-10-10 15:13:08 Error MWUSSetup CUpgradeDriver::PerformSetup: WSUS installation failed (Error 0x80070643: 安装时发生严重错误)
2007-10-10 15:13:08 Error MWUSSetup CSetupDriver::LaunchSetup: Setup failed (Error 0x80070643: 安装时发生严重错误)
2007-10-10 16:21:18 Error MWUSSetup DoInstall: Wsus setup failed (Error 0x80070643: 安装时发生严重错误)
在MS知识库中关于Error 0x80070643的文章提示原因安装程序所使用的帐户没有操作SQL数据库的权限,完全是扯淡,因为我用的是WSUS 2.0自带的Desktop Database,该知识库文章是2005年的,参考意义不大。
GOOGLE,第一次带中文搜索,有一些链接,看过后发觉要不不是我的问题(比如MMC 3.0没装的),要不没有解决问题。
去掉中文搜索,发现一些内容,提示应该查看WSUSCa_XXXX.log,原因是安装时使用MSI安装包导致真正的错误信息没有保存在WSUSSETUP.LOG(这算啥设计)。查看之,文件内容巨大,最后发觉如下内容:
An exception occurred during the Install phase.
System.FormatException: Input string was not in a correct format.
但仍不明白具体是什么问题。
改变搜索方向,查看“事件查看器”中的日记,在“应用程序”中可以看到LoadPerf产生了一系列的错误。内容一般如下:
未能为服务 WSUS: Server Web Service (%2)安装性能计数器字符串。 错误代码是数据节中的第一个 DWORD 值。
至此回忆起当初安装WSUS 2.0 SP1时也有类似问题。似乎WSUS安装时由于MSI的BUG(又是MSI!)导致无法正确安装perf计数器(“性能”组件),导致新版WSUS升级安装时先是无法删除旧版的计数器,然后在安装新版的计数器时就出现同名问题导致安装失败。
当初似乎是通过删除注册表中对应的键值解决问题的。从我两次升级安排均失败来看这应该不是罕见问题,GOOGLE之终于找到解决方法(在TECHNET的论坛上):
在%SystemRoot%system32下运行 lodctr /R
LODCTR
为可扩展的计数器更新性能监视器的计数器名称及说明文字用法:
LODCTR [\\computername] filename
computername 为远程计算机名。
如果未指定 computername,则使用本地机器。
filename 是初始化文件的名称,该文件包含一个可扩展的
计数器 DLL 的计数器名称定义和
说明文字。LODCTR /S:
将当前 perf 注册表字符串和信息存入LODCTR /R:
用还原 perf 注册表字符串和信息