使用 Windows XP 计算机登录到域或连接到网络资源时遇到延迟

文章翻译 文章翻译
文章编号: 832161 - 查看本文应用于的产品
重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和修改注册表的信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 Microsoft Windows 注册表说明
展开全部 | 关闭全部

本文内容

概要

本文介绍登录到域和打开网络共享时出现长时间延迟的问题。其中可能有各种原因。包括 WebClient 服务问题、代理设置问题以及服务器配置问题等等。

您可以进行一个简单的测试:关闭客户端计算机上的 WebClient 服务,或者关闭服务器上正在侦听传输控制协议 (TCP) 端口 80 的服务。如果其中任一替代方法解决了此问题,则有多种途径可以重新启用这些服务并减少延迟。更新到最新的 Windows XP Service Pack;绕开本地服务器的代理服务器;更改网络提供程序的顺序以使 WebClient 成为最后一个提供程序;安装 WebClient 服务的任何更新,然后根据 Internet Explorer 配置进行调整。

症状

当您使用的计算机安装了“适用于”一节所列的操作系统时,可能会遇到下列一种或多种症状:
  • 在登录屏幕上键入密码后,计算机似乎停止响应(挂起)。此问题从处理组策略时开始出现,一直持续到出现蓝屏之后、出现桌面图标之前。时间可长达几分钟。
  • 在登录过程中,您看到一条“正在应用计算机设置”的消息持续了好几分钟。但是,只要断开网络连接,就可以很快登录同一计算机。
  • 试图打开某个网络共享时出现长时间延迟。
  • 当您试图打开位于分布式文件系统 (DFS) 共享上的一个文件时,可能要花 90 秒到 15 分钟时间才能将其打开。但是,您也许可以使用该文件的直接路径快速将其打开。
  • 当您使用 Microsoft Internet Explorer 6 访问基于 Microsoft Windows NT 4.0 的服务器或基于 Microsoft Windows 2000 的服务器上的共享时,共享访问似乎停止响应(挂起)。

    注意:如果再多等一会儿(大概 10 分钟或更长时间),您也许就可以访问请求的共享了。

原因

在上述所有症状中,计算机都必须打开一个网络共享。打开网络共享的请求使用通用命名约定 (UNC) 路径 \\Servername\Sharename\Directory\Filename.ext。该 UNC 位置首先被传递给 WebClient 服务。WebClient 服务可能会试图连接到 http://Servername/Sharename。WebClient 服务可能会试图使用 Windows 的 Internet 扩展并通过代理服务器来联系启用 Web 分布式创作和版本管理 (WebDAV) 的服务器。该代理服务器试图在端口 80 上联系目标服务器。下列一个或多个原因可导致访问共享延迟:
  • WebClient 等待代理服务器的响应。响应也许从未发送出去。如果是这样,就会出现延迟,一直到 WebClient 超时为止。默认的延迟时间为 10 分钟。
  • 如果目标服务器不支持 TCP 端口 80 上的 HTTP,或者目标服务器脱机,则代理服务器就可能无法将预期 HTTP 错误代码发回 WebClient。
  • 如果传递请求的代理上存在无效的外部 DFS 服务器引用,则延迟可能是由外部 DFS 连接故障超时引起的。
  • 网络提供程序顺序先列出“Web Client Network”,之后才列出“Microsoft Windows Network”。
  • 用于身份验证的域控制器运行一个侦听 TCP 端口 80 的服务。例如,该域控制器也是具有 Outlook Web Access (OWA) 的 Exchange 服务器。
  • Internet Explorer 的代理服务器设置没有配置为“对本地地址不使用代理”。此外,本地 Intranet 完全限定域名也没有输入到排除列表中。
  • PATH 语句变量包含对 DFS 链接的引用,如下所示:
    PATH=\\corp.domain.com\dfsroot\DFSLink;C:\WINDOWS\system32;

解决方案

警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。

作为快速测试,请首先尝试“替代方法”一节中的步骤。如果“替代方法”一节可以解决问题,则问题的根源在于 WebClient 服务。如果“替代方法”一节无法解决问题,则问题超出了本文范围。

如果“替代方法”一节可以解决问题,但有一个或多个应用程序需要 WebClient 服务,请按下面列出的顺序使用每一种方法,直到所出现的现象得到解决。

方法 1:安装最新的 Windows XP Service Pack

要验证是否安装了 Windows XP SP1,请按照下列步骤操作:
  1. 右键单击“我的电脑”,然后单击“属性”。
  2. 在“常规”选项卡的“系统”下,查看 Service Pack 的版本。
有关如何获取最新 Service Pack 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322389 如何获取最新的 Windows XP Service Pack

方法 2:配置 Internet Explorer 以绕开代理服务器

要对 Internet Explorer 进行配置以使本地地址绕开代理服务器,请按照下列步骤操作:
  1. 启动 Internet Explorer。
  2. 单击“工具”,然后单击“Internet 选项”。
  3. 单击“连接”选项卡,然后单击“局域网设置”。
  4. 如果未选中“使用代理服务器”复选框,则使用下一方法。
    如果“使用代理服务器”复选框已选中,则单击以选中“对于本地地址不使用代理服务器”复选框。
  5. 单击“高级”。
  6. 在“例外”框中,键入所有本地服务器的完全限定域名,然后单击“确定”三次。
注意:还可以修改以下注册表项中的 REG_BINARY 字段,以便将 Internet Explorer 配置为绕过代理服务器:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\SavedLegacySettings
。即使“Internet 选项”对话框以及
HKCU
DEFAULT
注册表项显示代理已禁用,该注册表项也将会显示并供 Webclient 使用。

方法 3:更改网络提供程序的顺序

  1. 在桌面上,右键单击“网上邻居”,然后单击“属性”。
  2. 在“高级”菜单上,单击“高级设置”。
  3. 在“提供程序顺序”选项卡的“网络提供程序”列表中,单击“Web Client Network”。
  4. 按向下箭头,将“Web Client Network”置于提供程序列表的最后,然后单击“确定”。


或者,您也可以更改注册表中网络提供程序的顺序。该注册表项是
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\NetworkProvider\Order\ProviderOrder
。该项的默认值为 RDPNP,LanmanWorkstation,WebClient。

方法 4:安装相关修复程序

如果您在方法 1 中安装了 Windows XP SP1,则可以使用 Webclient.dll 的较新版本。 有关安装最新版本的 WebClient 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824383 尝试使用 WebDAV 将文件从基于 Windows XP 的计算机复制到 WebDAV 服务器时出现错误消息
安装此修复程序后,设置 ServerNotFoundCacheLifeTimeInSec 注册表项的值。为此,请按照以下 Microsoft 知识库文章“第 2 部分”一节中的步骤操作:
823372 Word 文档带有附加模板时需要很长时间才能打开

方法 5:调整 Internet Explorer 的安装

如果使用 Internet Explorer 管理工具包自定义、部署和管理 Internet Explorer 6 安装,并且已经部署了 .DEFAULT 注册表配置单元上设置的 Internet Explorer,则可以使用该方法解决此问题。

WebClient 服务使用 .DEFAULT 注册表设置。每个 WebClient 请求都发送至代理。代理请求最终会超时。

当基于 Windows XP 的计算机启动时,它会应用计算机策略文件。
  1. 向 UNC 提供程序 (MUP) 发送通知,指出该客户端必须连接到 domaincontroller1.domain.com 或登录服务器的 NetBIOS 名称。向可用重定向程序发送通知。
  2. WebClient 试图处理该请求。
  3. WinInet 从以下注册表项加载并读取代理配置:
    HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Internet Settings

    ProxyEnable
    ProxyOverride
    ProxyServer
  4. 如果这三个注册表项设置为使用代理服务器,WinInet 会将请求发送给代理服务器。这可能会超时并失败。此时,WebClient 服务会向 MUP 返回否定响应。
在这种情况下,可以通过为 ProxyOverride 值提供域控制器 NetBIOS 名称,来变通解决此问题。

注意:根据 WebDAV 请求中所显示名称的不同,这也可能是内部域的域名。

下面是一个示例:
	"ProxyEnable"=1
	"ProxyServer"="http://ProxyServername:PortNumber"
	"ProxyOverride"="*.intranet; domaincontroller1;*.domain.com;10.10.*;<local>"
在此示例中,ProxyServername 是代理服务器的名称,PortNumber 是 HTTP 的 TCP 端口号。该端口号通常是 80 或 8080。
收起该表格展开该表格
ProxyEnable0 = 禁用手动代理检测。1 = 启用手动代理检测。
ProxyServer代理服务器的名称和端口。
ProxyOverride域名系统 (DNS) 地址,用分号分隔并且不应传递到代理服务器上。您可以使用 <local> 值,使本地地址绕开代理服务器。如果包含该值,则它必须是字符串中的最终值。
注意:对于当前用户,该注册表项的位置如下:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
代理例外列表项存储在 ProxyOverride 值中。要向该列表中添加新值,请按照下列步骤操作:
  1. 在 Internet Explorer 中,单击“工具”,然后单击“Internet 选项”。
  2. 单击“连接”选项卡,然后单击“局域网设置”。
  3. 单击“高级”。
  4. 在“例外”框中,键入适当的信息。
注意:您可以在 Internet Explorer“连接”部分的“Internet 设置”下的 WinMSD 报告中看到这些项的值。 您还可以使用 Microsoft Internet Explorer Administration Kit (IEAK) 来配置客户端计算机上的代理服务器设置。

有关 IEAK 的其他信息,请访问下面的 Microsoft 网站:
http://technet.microsoft.com/en-us/ie/bb219517.aspx
注意:使用 .pac 文件时,如果该 .pac 文件包括以下内容,将会生成 WebDAV 请求:
function FindProxyForURL(url, host)
{
}

可以修改该 .pac 文件来避免 WebDAV 通信:
function FindProxyForURL(url, host)
{if (shExpMatch(host, "DCNAME*")) {                
return "DIRECT";                                 
} 

替代方法

要变通解决此问题,请尝试下列任一解决办法:
  • 如果可能,请停止在域控制器或文件服务器上侦听 TCP 端口 80 的服务。
  • 禁用 Windows XP 客户端上的 WebClient 服务。
要在 WebDAV 客户端计算机上检查 WebClient 服务的状态,或者要在 WebDAV 客户端计算机上禁用 WebClient 服务,请按照下列步骤操作:
  1. 单击“开始”,指向“所有程序”,指向“管理工具”,然后单击“计算机管理”。
  2. 在细节窗格中,双击“服务和应用程序”。
  3. 双击“服务”。
  4. 右键单击“WebClient”,然后单击“属性”。
  5. 单击“常规”选项卡。
  6. 在“启动类型”列表中,单击“已禁用”。
  7. 单击“应用”,然后单击“确定”。
注意:只要不是必须在 Web 分布式创作和版本管理 (WebDAV) 服务器上修改或写入文件,就可以禁用 WebClient 服务。

Windows 2000 不执行 WebClient 服务。默认情况下,Windows Server 2003 已将 WebClient 服务关闭。 有关被禁用的服务的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
812519 默认情况下,Windows Server 2003 中关闭的服务
对于 WebClient,还可以使用其他一些备选方案。 如果您正在运行 Windows XP,请按照下列步骤操作:
  1. 禁用 WebClient 服务。
  2. 安装使用 Web 文件夹的程序。例如,安装 Microsoft Office XP 或更高版本。
  3. 删除原来的网上邻居。
  4. 创建新的网上邻居。
有关 WebDAV 和 WebClient 的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
817929 使用 Web 分布式创作和版本管理 (WebDAV) 将网上邻居快捷方式添加到 Windows SharePoint Services 网站时不显示文件

状态

Microsoft 已经确认这是在“适用于”一节中列出的 Microsoft 产品中存在的问题。

更多信息

WebClient 服务使基于 Windows 的程序能够使用 Win32 API 创建、访问和修改基于 Internet 的文件。如果停止该服务,则无法使用这些功能。

关闭 WebClient 服务会停止 WebDAV 重定向程序。您将无法对 Web 服务器使用命令行命令,如 net usedircopyrename 等。不能使用“添加网上邻居”添加 Web DAV 位置。不能使用发布向导发布到 MSN 社区。不过,您仍然可以继续使用支持服务器消息块 (SMB) 协议的服务器。

在 Windows XP 及更高版本中,Windows 文件重定向程序包含一个内置 WebDAV 客户端。Microsoft Office 2000、Microsoft Office XP 和 Microsoft Office System 2003 包含运行时独立于 WebClient 服务的内置 WebDAV 重定向程序。

Windows XP WebDAV 重定向程序

Windows XP 包括新的 WebDAV 重定向程序组件。通过该 WebDAV 重定向程序组件,在 Windows XP 上运行的程序可以连接到 Internet,并且可以在 Internet 上执行本机读写数据。WebDAV 协议是 HTTP 的一个扩展,它可以使数据写入 HTTP 目标,如 Microsoft MSN Web 社区等。就像现有重定向程序提供对 SMB 和通用 Internet 文件系统 (CIFS) 服务器的访问一样,WebDAV 重定向程序提供对这些服务器的文件系统级访问。

访问 WebDAV 共享的一种办法是使用 net use 命令。例如,可以在命令提示符处键入以下命令:NET USE * http://webserver/davscratch

要连接到 MSN 社区,请使用 http://www.msnusers.com/yourcommunityname/files/ 作为目标。您必须使用的凭据为 Microsoft .NET Passport 凭据。如果您使用的是映射网络驱动器,则在“使用其他用户名连接”对话框中输入这些详细信息,或者使用带 /u:开关的 net use 命令。例如,可以在命令提示符处键入以下命令:NET USE http://www.msnusers.com/yourname/files /u:yourpassportaccount@hotmail.com

Windows XP

如果连接 Web 文件夹时未指定端口,就会使用 WebClient 服务。例如,如果使用“http://webserver/davscratch”URL,网络跟踪就会在 HTTP 标头中显示类似以下内容的信息:
 
HTTP:User-Agent = Microsoft-WebDAV-MiniRedir/5.1.2600

Microsoft Office

如果使用包含端口号的语法,就会通过 Office WebDAV 连接。例如,如果使用“http://webserver:80/davscratch”URL,网络跟踪就会显示类似以下内容的信息:
HTTP:User-Agent = Microsoft Data Access Internet Publishing Provider DAV

注意:由于代理端口可能会发生变化,因此上述信息在网络监视器中可能也可能不显示为“HTTP”通信。

注意

以下内容描述了一些已知的 WebDAV 互操作性问题:
  • 出于安全原因,Windows Server 2003 上默认情况下不启用 WebDAV 客户端。您必须自己启用 WebClient 服务。
  • 只有 Microsoft Office 2000 在 Windows 2000 或较低版本操作系统上运行时,才支持使用 Office 2000 连接到 Windows WebDAV 共享。如果 Office 2000 在基于 Windows XP 的计算机上运行,则不支持使用该程序连接到 Windows WebDAV 共享。
  • 如果您在基于 Windows XP 的计算机上使用 Microsoft Office,则使用的是 Office WebDAV 重定向程序而不是 Windows XP 文件重定向程序。通常,当您使用 Microsoft Office 产品时,最好使用通过 HTTP 名称而不是 UNC 路径表示的文件。例如,使用“http://Device Name/Virtual Root/File Name”,而不是“\\Device Name\Virtual Root\File Name”。

禁用 WebClient 不会影响 Internet 浏览。WebClient 仅用于 Web 分布式创作和版本管理 (WebDAV) 连接。

使用通用命名约定 (UNC) 文件名时,重定向程序将使用 SMB、WebDAV 还是两者组合,这要视服务器上提供的服务而定。

当应用程序试图打开位于网络上的文件时,I/O 管理器会将请求传递给名为 Multiple UNC Provider (MUP) 的系统组件。MUP 在逻辑上位于所有重定向程序上。当网络路径传递给 MUP 时,它会轮询所有注册的重定向程序,以判断它们是否理解此路径。反过来,重定向程序又联系服务器,以判断该路径对于特定协议是否有效。如果服务器符合该连接,重定向程序将向 MUP 返回成功。否则,重定向程序返回失败。所有以后的文件 I/O 请求都被传递给接受此路径的重定向程序。如果有多个重定向程序接受此路径,MUP 就会选择注册表中定义的优先级最高的那一个。 有关多个重定向程序的问题的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
171386 安装了多个重定向程序后出现连接延迟

URLScan 禁止 WebDAV 请求

要想进一步了解 URLScan,请访问以下 Microsoft 网站:
http://www.microsoft.com/technet/security/tools/urlscan.mspx

超时的注册表设置

WebClient 服务维护最后 60 秒内被联系过的非 DAV 服务器(否定缓存)列表。如果在该列表中找到该服务器,就会立即返回失败,而不漫游网络。通过更改 ServerNotFoundCacheLifeTimeInSec 注册表项的值,可以修改服务器在该列表中保留的时间。

注意:如果
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters\ServerNotFoundCacheLifeTimeInSec
注册表项不存在,则创建它。
类型:REG_DWORD
值:默认 60(十进制)
无最大值和最小值


RequestTimeoutInSec 表示发出请求(如“获取文件”或“放置文件”)后,WebDAV 等待 WinInet 的秒数。
\HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MRxDAV\Parameters\RequestTimeoutInSec

类型:REG_DWORD
值:默认 600(十进制)

参考

有关相关主题的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
812924 访问 Windows NT 4.0 或 Windows 2000 共享时可能停止响应
312181 打开 DFS 共享上的资源时出现长时间延迟
171386 安装了多个重定向程序后出现连接延迟
271361 如何在 Internet Explorer 中禁用自动代理缓存
320507 Internet Explorer 长达 30 分钟无法重试错误的代理服务器
810401 在中断“NET USE”命令之后出现错误消息“Local device name is already in use”(本地设备名已经在使用)
812924 访问 Windows NT 4.0 或 Windows 2000 共享时可能停止响应
817929 使用 Web 分布式创作和版本管理 (WebDAV) 将网上邻居快捷方式添加到 Windows SharePoint Services 网站时不显示文件
819961 如何使用注册表文件配置客户端代理服务器设置
823372 Word 文档带有附加模板时需要很长时间才能打开
826286 新用户无法访问 Internet 且代理设置为空
829909 连接到共享文件夹时 Windows XP 停止响应
830561 Word 2002 和 Word 2003 中带有附加模板的文档需要很长时间才能打开
317506 启用了 Winsock 代理后可能无法使用 VPN 登录到域
262981 即使已打开“对于本地地址不使用代理服务器”选项,Internet Explorer 也会对本地 IP 地址使用代理服务器
209252 可以在代理例外列表中指定的字符的最大数
有关 WebDAV 的更多信息,请访问下面的 Microsoft 网站:
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/844f5e01-4b9e-4dac-897e-2a0bb33f28af.mspx

属性

文章编号: 832161 - 最后修改: 2007年7月16日 - 修订: 6.2
这篇文章中的信息适用于:
  • Microsoft Windows XP Professional Edition
  • Microsoft Windows XP Service Pack 1a
  • Microsoft Windows XP Tablet PC Edition
  • Microsoft Windows XP Professional 64-Bit Edition (Itanium)
  • Microsoft Windows XP for Itanium-based Systems Version 2003
关键字:?
kbprb KB832161
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