DCOM 端口范围配置问题

文章翻译 文章翻译
文章编号: 217351 - 查看本文应用于的产品
展开全部 | 关闭全部

症状

您可能会注意到下列症状:
  • 万维网发布未能启动,并在事件日志中会出现以下事件:
    事件 ID: 7023
    源: 服务控制管理器
    说明: 该万维网发布服务终止,并出现以下错误: 无法创建该终结点。
  • 如果试图停止服务,如 W3SVC、 MSFTPSVC、 SMTPSVC、 SS LDAP 或 SS 消息在尝试将失败并显示以下错误消息:
    错误 1721年: 没有足够的资源是完成此操作
  • 分布式的组件对象模型 (DCOM) 客户端试图连接到 DCOM 服务器的失败,出现以下错误消息:
    RPC_S_SERVER_UNAVAILABLE (0x800706ba)-RPC 服务器不可用

原因

发生此问题的
HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\Internet
注册表项中的端口区域设置的配置不正确的原因或者是由于一个协议端口限制通过 dcomcnfg 命令协议属性页配置。

解决方案

重要此分区、 方法,或任务包含告诉您如何修改注册表的步骤。但是,如果注册表修改不当可能会出现严重问题。因此,请确保您仔细按照这些步骤。附加的保护注册表之前先备份您对其进行修改。然后,您可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756如何备份和还原在 Windows 注册表

若要解决此问题,请使用下列方法之一:
  • 如果您 想来配置 DCOM 以使用的端口范围、 删除注册表键和然后重新启动计算机。
  • 如果您想要使用的端口的范围在计算机上配置 DCOM,使用
    HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\Internet
    的注册表项来配置端口的范围,并按照以下白皮书:
    与防火墙使用分布式的 COM
    http://msdn.microsoft.com/en-us/library/ms809327.aspx
    如果您使用 dcomcnfg 命令实用程序来配置端口限制,您可能会遇到已知 dcomcnfg 命令 bug。有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    201911dcomcnfg 命令写入名为 value 中格式不正确的端口
    而不是使用 dcomcnfg 命令实用程序使用 Regedt32.exe 配置端口限制,如白皮书中所述。

    要打开的端口数取决于 DCOM 应用程序和其他计算机上运行的服务的数量。例如对于 DCOM 应用程序进程的每个实例使用一个端口 ; Microsoft Internet 信息服务器 (IIS) 使用最少的五个端口。

    此外,则必须确定要打开的端口的范围。例如,Microsoft SQL Server 使用端口 1433年传入请求和传出呼叫的端口 1024年-5000。考虑这些的因素建议您打开 100 个端口的最小,并使用大于 5000 的端口范围。例如对于配置 DCOM 以使用端口范围 5000 5100。

更多信息

配置计算机以使用的端口的范围可以中断系统上的其他应用程序。在 4 和更高版本运行 Microsoft Windows NT 4.0 服务包的系统上获得最佳的另一种方法是配置 DCOM 应用程序通过使用 AppId 项使用静态终结点。

要配置 DCOM 应用程序作为 DCOM 协议通过 TCP/IP 使用一个静态端口,请按照下列步骤操作:

在客户端计算机上
  1. 从 $ 开始 菜单中单击 运行,键入 dcomcnfg 命令,然后单击 确定
  2. 默认协议 选项卡上将 面向连接的 TCP/IP 协议 移至列表的顶部,并重新启动计算机。
服务器计算机上
  1. 从 $ 开始 菜单中单击 运行,键入 dcomcnfg 命令,然后单击 确定
  2. 默认协议 选项卡上将移动到列表顶部的 面向连接的 TCP/IP 协议
  3. 使用工具 (如 OLEVIEW 找到您的应用程序的 AppId 全局唯一标识符 (GUID)。
  4. 启动注册表编辑器 (Regedt32.exe)。
  5. 在注册表中找到以下项:
    HKEY_CLASSES_ROOT\AppId\ {AppId GUID}
  6. 编辑 菜单上单击 添加值,然后添加以下注册表值:
    值名称: 终结点
    数据类型: REG_MULTI_SZ
    : ncacn_ip_tcp,0,<端口号 >
    其中 <端口号 > 是您要使用的静态端口。
  7. 退出注册表编辑器。
  8. 重新启动计算机。
请注意您的应用程序可能不选取静态终结点中,从注册表是否注册表中不存在的 AppId.exe 名称映射。

参考

有关为.exe 名称映射的详细信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
216051FIX: dcomcnfg 命令 NT 4.0 SP4 做不写下 HKCR\APPID.exe 名称

属性

文章编号: 217351 - 最后修改: 2006年11月1日 - 修订: 2.3
这篇文章中的信息适用于:
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 4.0 开发员版
关键字:?
kbmt kbnofix kbprb KB217351 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 217351
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com