本文提供了运行 vssadmin 列表编写器时未列出 VSS 编写器的问题的解决方案。
原始 KB 数: 2009533
现象
在 Windows Server 2008 上运行 vssadmin 列表编写器时,不会列出 VSS 编写器。 在应用程序事件日志中,记录以下事件:
日志名称: 应用程序 来源:VSS 事件 ID:34 级别:错误 说明: 卷影复制服务错误:未注册 VSS 事件类。 这会阻止任何 VSS 编写器接收事件。 这可能是由于安装失败或应用程序安装程序或卸载程序导致的。
日志名称: 应用程序 来源:VSS 事件 ID:8193 级别:错误 说明: 卷影复制服务错误:调用例程 CoCreateInstance 时出现意外错误。 hr = 0x80040154。
日志名称: 应用程序 来源:VSS 事件 ID:13 级别:错误 说明: 卷影复制服务信息:具有 CLSID 的 COM 服务器 {faf53cc4-bd73-4e36-83f1-2b23f46e513e} 和名称 无法启动 VSSEvent。 [0x80070057] 日志名称: 应用程序 来源:VSS 事件 ID:8193 级别:错误 说明: 卷影复制服务错误:调用例程 CoCreateInstance 时出现意外错误。 hr = 0x80070057。
如果打开 Windows Server 备份管理单元,则会发生以下错误:
Windows Server 备份管理单元操作期间发生致命错误。 错误详细信息: 灾难性故障。 关闭 Windows Server 备份,然后重启它。
原因
出现此问题的原因是Eventcls.dll的注册表路径不正确,或者 TypeLib 设置的注册表数据类型不正确。
解决方法
若要解决此问题,请执行以下步骤。
重要
此部分(或称方法或任务)介绍了修改注册表的步骤。 但是,注册表修改不当可能会出现严重问题。 因此,按以下步骤操作时请务必谨慎。 作为额外保护措施,请在修改注册表之前先将其备份。 如果之后出现问题,您就可以还原注册表。 有关如何备份和还原注册表的详细信息,请单击下面的文章编号,查看相应的 Microsoft 知识库文章:322756 如何备份和还原 Windows 中的注册表
- 单击“开始”,在“开始搜索”框中键入 regedit,然后按 Enter。
- 找到并单击以下注册表项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\EventSystem\{26c409cc-ae86-11d1-b616-00805fc79216}\EventClasses\{FAF53CC4-BD73-4E36-83F1-2B23F46E513E}-{00000000-0000-0000-0000-000000000000}-{00000000-0000-0000-0000-000000000000} - 找到 TypeLib 注册表值。
注意
TypeLib** 的注册表类型应显示为REG_EXPAND_SZ**。 如果不是这种情况,则必须删除密钥,然后必须重新创建密钥。 为此,请执行以下步骤: a. 选择 TypeLib 注册表值,然后将其删除。
b. 创建新的 可展开字符串值,然后将其命名为 TypeLib。
- 双击 TypeLib 注册表值。 在“值数据”框中,键入 %systemroot%\system32\EVENTCLS.DLL,然后单击“确定”。
- 关闭 Regedit。
- 单击“开始”,在“开始搜索”框中键入 services.msc,然后按 Enter。
- 一次右键单击以下服务,然后单击“重启”:
- COM+ 事件系统
- 卷影复制
- 关闭服务管理单元。
- 打开提升的命令提示符,键入 vssadmin 列表编写器,然后按 Enter。
- 验证 VSS 编写器现在是否已列出。