CoCreateInstance 函数在基于 Windows XP 专业版 Service Pack 2 的或基于 Windows Server 2003 的计算机上可能会返回一个 HRESULT 故障

Support for Windows Server 2003 ended on July 14, 2015

Microsoft ended support for Windows Server 2003 on July 14, 2015. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 914301
本文已归档。它按“原样”提供,并且不再更新。
症状
CoCreateInstance函数可能返回 HRESULT 故障 Microsoft Windows XP 专业版 Service Pack 2 (SP2)-基于或基于 Microsoft Windows Server 2003 的计算机。CoCreateInstance函数可能返回下列 HRESULT 值之一:
  • E_HANDLE
  • E_NOINTERFACE
  • E_ACCESSDENIED
原因
如果远程过程调用 (RPC) 通信线程用于 DCOM 跨进程通信已提前结束的计算机上可能会出现此问题。

例如,在以下情形中可能会发生此问题:
  • DCOM 客户端线程有 DCOM 服务器未完成调用。
  • 客户端进程关闭之前,线程可以正确地清理并调用 CoUninitialize 函数。
在此方案中,另一个无关的 DCOM 进程可能会过早和不正确地被清除远程过程调用服务。因此,E_HANDLE、 E_NOINTERFACE 或 E_ACCESSDENIED 错误,然后尝试使用此 DCOM 过程的调用中发生。发生这些错误时,DCOM 服务器可能会继续在计算机上运行。但是,现由其他 DCOM 进程无法访问 DCOM 服务器。
解决方案

服务包信息

若要解决此问题,请获取最新的服务包的 Windows Server 2003。有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
889100 如何获取最新的 Windows Server 2003 service pack

Windows XP 专业版 SP2 修补程序信息

可以从 Microsoft 获得支持的热修复补丁程序。但是,此修补程序用于解决本文中描述的问题。此热修复补丁程序仅适用于正出现此特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修复程序的下一个软件更新。

如果此修复程序可供下载,则此知识库文章顶部的"修补程序下载"部分。如果未显示此节,请与 Microsoft 客户服务和支持,以获取此修复程序。

注意 如果出现其他问题或需要任何故障诊断,您可能需要创建单独的服务请求。将正常收取费用将应用于其他支持问题和事项,不需要此特定修补程序进行。有关的 Microsoft 客户服务和支持电话号码,或者创建一个单独的服务请求的完整列表,请访问下面的 Microsoft 网站: 注意 "可用的热修补程序下载"表格显示此热修复补丁程序适用的语言。如果您看不到您的语言,这是因为热修复补丁程序不适用于该语言。

先决条件

不需要任何先决条件。

重新启动要求

在应用此修补程序后,您必须重新启动计算机。

修补程序替换信息

此修补程序不替换任何以前的修复程序。

文件信息

此修补程序的英文版具有的文件属性 (或更新的文件属性) 下表中列出。协调世界时 (UTC) 中列出了这些文件的日期和时间。当您查看文件信息时,它已转换为当地时间。要了解 UTC 与本地时间之间的时差,请使用 时区 在控制面板中的日期和时间项中的选项卡。
文件的名称文件版本文件大小日期时间平台
Rpcrt4.dll5.1.2600.2859582,1442006 年 3 月 2 日03: 55x86

Windows Server 2003 修补程序信息

先决条件

不需要任何先决条件。

重新启动要求

在应用此修补程序后,您必须重新启动计算机。

修补程序替换信息

此修补程序不替换任何以前的修复程序。

文件信息

此修补程序的英文版具有的文件属性 (或更新的文件属性) 下表中列出。协调世界时 (UTC) 中列出了这些文件的日期和时间。当您查看文件信息时,它已转换为当地时间。要了解 UTC 与本地时间之间的时差,请使用 时区 在控制面板中的日期和时间项中的选项卡。

Windows Server 2003 中,32 位版本

文件的名称文件版本文件大小日期时间平台SP 要求服务分支
Ole32.dll5.2.3790.3741,193,9842005 年 7 月 21 日03: 12x86RTMQFE
Rpcproxy.dll5.2.3790.14126,1122004 年 3 月 16 日03: 17x86RTMQFE
Rpcrt4.dll5.2.3790.521589,8242006 年 4 月 19 日09: 48x86RTMQFE
我们5.2.3790.374296,9602005 年 7 月 21 日03: 12x86RTMQFE
Rpcrt4.dll5.2.3790.2685645,6322006 年 4 月 19 日10: 22x86SP1SP1QFE

Windows Server 2003 中,基于 Itanium 的版本

文件的名称文件版本文件大小日期时间平台SP 要求服务分支
Ole32.dll5.2.3790.3743,582,9762006 年 4 月 19 日10: 58IA-64RTMQFE
Rpcproxy.dll5.2.3790.14173,2162006 年 4 月 19 日10: 58IA-64RTMQFE
Rpcrt4.dll5.2.3790.5212,151,4242006 年 4 月 19 日10: 58IA-64RTMQFE
我们5.2.3790.374694,2722006 年 4 月 19 日10: 58IA-64RTMQFE
Wole32.dll5.2.3790.3741,193,9842006 年 4 月 19 日10: 58x86WOW
Wrpcproxy.dll5.2.3790.14126,1122006 年 4 月 19 日10: 58x86WOW
Wrpcrt4.dll5.2.3790.521544,7682006 年 4 月 19 日10: 58x86WOW
Rpcrt4.dll5.2.3790.26852,470,9122006 年 4 月 19 日11: 06IA-64SP1SP1QFE
Wrpcrt4.dll5.2.3790.2685628,7362006 年 4 月 19 日11: 06x86SP1WOW

Windows Server 2003 中,基于 x64 版本

文件的名称文件版本文件大小日期时间平台SP 要求服务分支
Rpcrt4.dll5.2.3790.26851,720,8322006 年 4 月 19 日11: 09x64SP1SP1QFE
Wrpcrt4.dll5.2.3790.2685628,7362006 年 4 月 19 日11: 09x86SP1WOW
状态
Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。

此问题最早在 Windows 服务器 2003 Service Pack 2 中。
更多信息
有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语的说明

属性

文章 ID:914301 - 上次审阅时间:12/09/2015 04:37:00 - 修订版本: 5.0

Microsoft Windows Server 2003 Enterprise Edition, Microsoft Windows Server 2003 Standard Edition

  • kbnosurvey kbarchive kbautohotfix kbwinserv2003sp2fix kbqfe kbHotfixServer kbwinserv2003presp2fix kbwinxppresp3fix kbfix kbbug kbmt KB914301 KbMtzh
反馈