你目前正处于脱机状态,正在等待 Internet 重新连接

如何在 Windows Server 2003、Windows XP 和 Windows Vista 中确定 Winsock2 是否已损坏并从中恢复

Support for Windows XP has ended

Microsoft ended support for Windows XP on April 8, 2014. This change has affected your software updates and security options. Learn what this means for you and how to stay protected.

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.

症状
当您尝试使用 Ipconfig 程序 (Ipconfig.exe) 释放和续订 IP 地址时,可能会收到下列错误消息之一。
消息 1
在续订接口“Internet”时出错: 在一个非套接字上尝试了一个操作。
消息 2
在续订接口“本地连接”时出错: 无法加载或初始化请求的服务提供程序。
当您启动 Internet Explorer 时,可能会收到以下错误消息:
The page cannot be displayed
当您使用计算机时,可能会收到以下错误消息:
Initialization function INITHELPERDLL in IPMONTR.DLL failed to start with error code 10107
此外,您还可能遇到以下症状:IP 地址或自动专用 IP 地址 (APIPA) 缺失;只能接收而不能发送 IP 数据包。

当您使用 ipconfig /renew 命令时,可能会收到以下错误消息。

消息 1
An error occurred while renewing interface local area connection: an operation was attempted on something that is not a socket. Unable to contact driver Error code 2.
消息 2
The operation failed since no adapter is in the state permissible for this operation.
消息 3
参考的对象类型不支持尝试的操作。
当您在“设备管理器”中单击“显示隐藏的设备”时,“非即插即用驱动程序”下将显示处于禁用状态的“TCP/IP 协议驱动程序”,并且您会收到错误代码 24。

当您创建拨号连接时,可能会收到以下错误消息:
Error 720: No PPP Control Protocols Configured
原因
如果 Winsock 注册表项已损坏,则可能会出现这些问题。

为 Windows XP 用户确定 Winsock2 项是否损坏的手动步骤

要确定上述症状是否由 Winsock2 项的问题引起,请使用下列方法之一。

方法 1:使用 Netdiag 工具

要使用 Netdiag 工具,必须安装 Microsoft Windows XP 支持工具。为此,请按照下列步骤操作。

注意
  • 如果您已经安装了支持工具,请转到本部分的第二个过程。
  • 如果您尚未安装支持工具,且没有 Windows XP 安装 CD,请转到“方法 2”。
  1. 插入 Windows XP 安装 CD,然后找到 Support\Tools 文件夹。
  2. 双击“Setup.exe”文件。
  3. 按照屏幕上的步骤操作,直至出现“请选择安装类型”屏幕。
  4. 在“请选择安装类型”屏幕上,单击“完全”,然后单击“下一步”。
完成安装后,请按照下列步骤操作:
  1. 单击“开始”,单击“运行”,键入 Command,然后单击“确定”。
  2. 键入 netdiag /test:winsock,然后按 Enter。
Netdiag 工具将返回对若干网络组件(包括 Winsock)的测试结果。有关测试的详细信息,请在 netdiag 命令的末尾添加 /vnetdiag /test:winsock /v

方法 2:使用 Msinfo32 程序

注意 只有在您没有 Windows XP 安装 CD 且未安装支持工具时,才应使用此方法。
  1. 单击“开始”,单击“运行”,键入“Msinfo32”,然后单击“确定”。
  2. 依次展开“组件”和“网络”,然后单击“协议”。
  3. “协议”下将显示 10 个节。如果 Winsock2 项未损坏,则节标题中将包括下列名称:
    • MSAFD Tcpip [TCP/IP]
    • MSAFD Tcpip [UDP/IP]
    • RSVP UDP Service Provider
    • RSVP TCP Service Provider
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    如果显示的名称与此列表中的名称有任何不同,则说明 Winsock2 项已损坏,或安装了第三方加载项(如代理软件)。
如果安装了第三方加载项,则该加载项的名称将替代列表中的字母“MSAFD”。

如果列表中的节数多于 10 个,则说明安装了第三方加载项。

如果少于 10 个,则说明缺少信息。

注意 这些条目表示 Windows XP 安装中只安装了 TCP/IP 协议。在 Winsock 正常运行的情况下,如果安装了其他协议,则还可以看到其他条目。例如,如果安装了 NWLink IPX/SPX,您将看到 7 个附加的节,从而使总节数达到 17 个。下面是一个新节的示例标题:
MSAFD nwlnkipx [IPX]
另外,安装 NWLink IPX/SPX 时创建的每个新节都以“MSAFD”开头。因此,仍只有两个节不以这些字母开头。

如果 Netdiag 测试失败,或者您通过查看 Msinfo32 确定 Winsock 已损坏,则必须使用下一部分中的步骤修复 Winsock2 项。

如果需要我们为您重置 Winsock 设置,请转到“帮我修复此问题”部分。如果您想自己重置,请转到“我自己修复此问题”部分。
帮我修复此问题
要自动重置 Winsock 设置,单击“修复此问题”按钮或链接。在“文件下载”对话框中单击“运行”,然后按照修复此问题向导中的步骤操作。


注意:此向导可能只提供英文版本。但是,Windows 的其他语言版本也提供自动修复功能。

注意:如果操作的计算机中并未出现此问题,则可将修复问题解决方案保存至闪存驱动器或 CD 中,然后在出现此问题的计算机中运行该功能。

下一步,请转到“此方法是否已修复问题?”部分。
解决方案

使 Winsock2 从损坏中恢复的手动步骤

Windows XP Service Pack 2 说明

要在已安装 Windows XP Service Pack 2 (SP2) 的情况下修复 Winsock,请在命令提示符处键入 netsh winsock reset,然后按 Enter。

注意:运行此命令后需要重新启动计算机。另外,对于运行 Windows XP SP2 的计算机,可以使用新的 netsh 命令来重建 Winsock 项。有关更多信息,请访问下面的网站:警告运行 netsh winsock reset 命令时,访问或监视 Internet 的程序(例如防病毒、防火墙或代理客户端)可能会受到不良影响。使用此解决方案后,如果有程序无法继续正常工作,请重新安装该程序以还原其功能。

注意 如果这些步骤不能解决该问题,请按照下一部分中的步骤操作。

未安装 Service Pack 2 的 Windows XP 的说明

要在未安装 Windows XP SP2 的情况下修复 Winsock,请删除损坏的注册表项,然后重新安装 TCP/IP 协议。
步骤 1:删除损坏的注册表项
重要说明本部分(或称方法或任务)包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756 如何在 Windows 中备份和还原注册表


有关如何备份注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756如何在 Windows XP 和 Windows Vista 中备份和还原注册表
  1. 单击“开始”,然后单击“运行”。
  2. 在“打开”框中,键入“regedit”,然后单击“确定”。
  3. 在注册表编辑器中,找到以下注册表项,然后右键单击每一项并单击“删除”:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Winsock2
  4. 当提示您确认删除时,请单击“是”。
注意:删除 Winsock 项后需要重新启动计算机。这样做可使 Windows XP 操作系统为这两项创建新的 shell 条目。如果在删除 Winsock 项后未重新启动计算机,则下一步将无法正常进行。
步骤 2:安装 TCP/IP
  1. 右键单击网络连接,然后单击“属性”。
  2. 单击“安装”。
  3. 单击“协议”,然后单击“添加”。
  4. 单击“从磁盘安装”。
  5. 键入 C:\Windows\inf,然后单击“确定”。
  6. 在可用协议列表中,单击“Internet 协议(TCP/IP)”,然后单击“确定”。

    如果未显示“Internet 协议(TCP/IP)”,请按照下列步骤操作:
    1. 单击“开始”,然后单击“搜索”。
    2. 在“搜索助理”窗格中,单击“更多高级选项”。
    3. 单击以下三个复选框以将其选中:
      • 搜索系统文件夹
      • 搜索隐藏的文件和文件夹
      • 搜索子文件夹
    4. 在“全部或部分文件名”框中,键入 nettcpip.inf,然后单击“搜索”。
    5. 在结果窗格中,右键单击“Nettcpip.inf”,然后单击“安装”。
  7. 重新启动计算机。

为 Windows Vista 用户确定 Winsock2 项是否损坏的手动步骤

  1. 单击“开始”,单击“运行”,键入“Msinfo32”,然后单击“确定”。
  2. 依次展开“组件”和“网络”,然后单击“协议”。
  3. “协议”下将显示 10 个节。如果 Winsock2 项未损坏,则节标题中将包括下列名称:
    • MSAFD Tcpip [TCP/IP]
    • MSAFD Tcpip [UDP/IP]
    • MSAFD Tcpip [TCP/IPv6]
    • MSAFD Tcpip [UDP/IPv6]
    • RSVP UDP Service Provider
    • RSVP TCP Service Provider
    • RSVP UDPv6 Service Provider
    • RSVP TCPv6 Service Provider
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    • MSAFD NetBIOS [\Device\NetBT_Tcpip...
    如果显示的名称与此列表中的名称有任何不同,则说明 Winsock2 项已损坏,或安装了第三方加载项(如代理软件)。
如果安装了第三方加载项,则该加载项的名称将替代列表中的字母“MSAFD”。

如果列表中的节数多于 10 个,则说明安装了第三方加载项。

如果少于 10 个,则说明缺少信息。

注意 这些条目表示 Windows XP 安装中只安装了 TCP/IP 协议。在 Winsock 正常运行的情况下,如果安装了其他协议,则还可以看到其他条目。例如,如果安装了 NWLink IPX/SPX,您将看到 7 个附加的节,从而使总节数达到 17 个。下面是一个新节的示例标题:
MSAFD nwlnkipx [IPX]
另外,安装 NWLink IPX/SPX 时创建的每个新节都以“MSAFD”开头。因此,仍只有两个节不以这些字母开头。

如果 Netdiag 测试失败,或者您通过查看 Msinfo32 确定 Winsock 已损坏,则必须使用下一部分中的步骤修复 Winsock2 项。

为 Windows Vista 用户从 Winsock2 损坏中恢复的手动步骤

Winsock 损坏可导致连接问题。要在 Windows Vista 中使用“网络诊断”解决此问题,请按照下列步骤操作:
  1. 单击“开始”,然后单击“网络”
  2. 单击“网络和共享中心”。
  3. 在“网络和共享中心”框中,单击“诊断和修复”。
注意:也可以访问控制面板中的“网络和共享中心”。

为 Windows Vista 重置 Winsock

要为 Windows Vista 重置 Winsock,请按照下列步骤操作:
  1. 单击开始,在开始搜索框中键入 cmd,右键单击“cmd.exe”,单击“以管理员身份运行”,然后按“继续”
  2. 在命令提示符处键入 netsh winsock reset,然后按 Enter。

    注意:如果该命令键入错误,则出现一条错误消息。重新键入该命令。当该命令成功完成时,出现一条确认消息,后跟一个新的命令提示符。然后,转到步骤 3。
  3. 键入 exit,然后按 Enter。


此方法是否已修复问题?

请检查是否已重置 Winsock。如果 Winsock 已重置,您就完成了本部分内容。如果 Winsock 未重置,则可与支持部门联系
类似的问题和解决方案
有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
936211如何解决 Internet Explorer 中的网络连接问题
有关如何解决 Windows Vista 中的网络和 Internet 连接问题的更多信息,请访问下面的 Microsoft 网站:
fixit fix it
属性

文章 ID:811259 - 上次审阅时间:07/04/2013 12:34:00 - 修订版本: 20.0

  • Windows Vista Enterprise
  • Windows Vista Enterprise 64-bit edition
  • Windows Vista Business
  • Windows Vista Business 64-bit edition
  • Windows Vista Home Basic
  • Windows Vista Home Basic 64-bit edition
  • Windows Vista Home Premium
  • Windows Vista Home Premium 64-bit edition
  • Windows Vista Starter
  • Windows Vista Ultimate
  • Windows Vista Ultimate 64-bit edition
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
  • kbsurveynew kbmsifixme kbfixme kbresolve kbhowto kbacwsurvey kbnetwork kberrmsg kbprb KB811259
反馈