尝试安装 Visual Studio 2005、Visual Studio .NET 2003 或 Visual Studio .NET 2002 的更新时出现错误消息:“The feature you are trying to use is on a network resource that is unavailable”(无法访问您要使用的功能所在的网络位置)

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

本文内容

症状

尝试安装 Microsoft Visual Studio 2005、Microsoft Visual Studio .NET 2003 或 Microsoft Visual Studio .NET 2002 的更新时,可能会收到类似以下内容的错误消息:
无法访问您要使用的功能所在的网络位置。
您可以单击“确定”按钮,再试一次;也可以在下面的框中键入其他包含安装程序包 File_name.msi 的路径。

原因

出现该问题可能有多个原因,其中包括以下原因。
  • 安装程序在 Windows Installer 缓存中无法找到正确的产品 MSI 文件。
    安装 Visual Studio 2005、Visual Studio .NET 2003 或 Visual Studio .NET 2002 时,安装程序会将相应的 .msi 文件保存到 Windows Installer 缓存中。当您尝试修复或重新安装产品时,或者当您向产品应用更新时,都会引用这个缓存的 .msi 文件。

    在某些情况下,安装程序在 Windows Installer 缓存中无法找到该 .msi 文件。在这些情况下,安装程序会尝试检测它上次运行时所用的安装位置,看是否存在产品安装文件,以此来解析源位置。如果安装程序无法解析源位置,则会提示用户提供安装媒体。
  • 存在文件哈希不匹配。
    Visual Studio 的更新基于 Windows Installer。Windows Installer 使用文件版本号来确定计算机上的文件是否为必须由更新中包含的较新文件替换的较旧版本。

    某些文件(例如文本文件和源文件)不带有版本号。因此,基于 Windows Installer 的更新必须使用另一种方法来验证较新的文件。此方法将哈希应用于所有非版本化的文件。对于非版本化的文件,系统会将计算机上的文件的文件哈希与 Windows Installer 数据库中记录的文件哈希进行比较。如果在这两个文件哈希之间检测到差异,则安装程序会尝试从源安装媒体中提取文件。
    • 对计算机上的文件进行修改造成文件哈希不匹配
      在某些情况下,用户可能手动修改了在安装过程中安装的文件。在这种情况下,当您尝试安装更新时,可能会提示您提供产品的安装媒体。

      注意:手动修改在安装过程中安装的文件有其合理的原因。例如,您可能想将产品密钥 (PID) 添加到 Visual Studio 的许可副本安装过程中,然后再将产品放在组织中的网络共享位置上。这样,您就不必与必须安装产品的用户共享 PID。通常是在一个名为 Setup.sdb 的文本文件中进行此更改。当您进行此更改时,该文件的文件哈希不再与 Windows Installer 在其数据库中为该文件存储的文件哈希相匹配。
    • 由于产品中带有的哈希不正确而发生文件哈希不匹配
      Visual Studio .NET 2002 和 Visual Studio .NET 2003 在 Windows Installer 数据库中存储的哈希与产品安装的文件的哈希不匹配。

      有关 Visual Studio .NET 2002 中的此问题的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
      939401 尝试安装 Microsoft Visual Studio .NET 2002 的更新时出现错误消息:“The feature you are trying to use is on a network resource that is unavailable”(无法访问您要使用的功能所在的网络位置)
      注意:知识库文章 939401 不适用于 Visual Studio 2005 或 Visual Studio .NET 2003。

替代方法

若要变通解决此问题,请将产品安装 CD 插入计算机的 CD ROM 驱动器中。或者,提供产品的可用安装媒体的路径。例如,安装媒体可以位于计算机的硬盘上或共享网络文件夹中。

如果尝试将某一更新部署到发生此问题的许多台计算机上,则建议您使用“/addsource”命令行选项。

使用“/addsource”命令行选项

Microsoft Visual Studio .NET 2002、Microsoft Visual Studio .NET 2003 和 Microsoft Visual Studio 2005 的最新软件更新包含对“/addsource”命令行选项的支持。在尝试安装指定产品的更新时,如果收到“症状”部分中提及的错误消息,则可以使用“/addsource”命令行选项。使用此命令行选项可指定希望 Windows Installer 查找文件的位置。要使用此命令行选项,请按照下列步骤操作。

步骤 1:验证尝试安装的软件更新是否支持“/addsource”命令行选项

为此,请使用以下任一命令行开关打开用法对话框:
  • /?
  • /help
如果安装了支持“/addsource”命令行选项的更新,则此命令行选项将显示在用法对话框中。

步骤 2:复制 Visual Studio 安装媒体或管理映像

将以下任一项复制到可从要对其应用软件更新的所有计算机访问的文件夹中:
  • Visual Studio 安装媒体。必须复制安装媒体中的所有文件。
  • 以前创建的 Visual Studio 产品管理映像
注意
  • 通常,此文件夹位于网络共享位置。
  • 必须确保 Vs_setup.msi 文件位于包含 Visual Studio 安装媒体文件的文件夹中。稍候使用“/addsource”命令行选项时将需要 Vs_setup.msi 文件。
  • 如果尝试更新 Microsoft Visual Studio 2005 Express Edition 的组件程序(如 Microsoft Visual Basic 2005 Express Edition),则必须首先从 IExpress 程序包中提取该产品,然后才能获取该产品的 Windows Installer 程序包。例如,如果 Visual Basic 2005 Express Edition 的副本是单个文件(如 Ixpvb.exe),则必须执行此操作。

    要提取该文件的内容,请使用以下命令:
    <Visual Studio 2005 Express Edition 安装程序可执行文件的名称> /C /T:"<l要将文件内容提取到的文件夹的完整路径>"
    例如,使用以下命令提取文件内容:
    ixpvb.exe /C /T:"c:\temp\vbfiles\"

步骤 3:使用“/addsource”命令行选项

可在安装软件更新时使用“/addsource”命令行选项。执行此操作时,请在该命令中使用以下语法:
<更新的可执行文件的名称> /addsource "<产品的 Windows Installer 程序包路径>"
注意:在该命令中,需使用在步骤 2 中复制到文件夹的产品的 Windows Installer 程序包路径替换 <产品的 Windows Installer 程序包路径> 占位符。

如果软件更新可以更新多个版本的 Visual Studio,则可以为每个版本的 Visual Studio 指定多个源位置。为此,请使用“/addsource”命令行选项的多个实例,如下所示:
<更新的可执行文件的名称> /addsource "<第一个 Windows Installer 程序包的路径>" /addsource "<第二个 Windows Installer 程序包的路径>"
注意:必须为安装到要对其应用软件更新的计算机上的每个版本的 Visual Studio 指定一次“/addsource”命令行选项。但是,如果只更新一个版本的 Visual Studio,则只需指定“/addsource”命令行选项一次。即使软件更新包含多个版本的 Visual Studio 的更新,也要执行此操作。

属性

文章编号: 944298 - 最后修改: 2008年3月3日 - 修订: 2.1
这篇文章中的信息适用于:
  • Microsoft Visual Studio 2005 Team Suite
  • Microsoft Visual Studio 2005 Team Foundation Server
  • Microsoft Visual Studio 2005 Team Edition for Software Testers
  • Microsoft Visual Studio 2005 Team Edition for Software Developers
  • Microsoft Visual Studio 2005 Team Edition for Software Architects
  • Microsoft Visual Studio 2005 Team Edition for Database Professionals
  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio 2005 Professional
  • Microsoft Visual Studio 2005 Express Edition
  • Microsoft Visual Studio 2005 Service Pack 1?当用于
    • Microsoft Visual Studio 2005 Team Suite
    • Microsoft Visual Studio 2005 Team Foundation Server
    • Microsoft Visual Studio 2005 Team Edition for Software Testers
    • Microsoft Visual Studio 2005 Team Edition for Software Developers
    • Microsoft Visual Studio 2005 Team Edition for Software Architects
    • Microsoft Visual Studio 2005 Team Edition for Database Professionals
    • Microsoft Visual Studio 2005 Standard Edition
    • Microsoft Visual Studio 2005 Professional
    • Microsoft Visual Studio 2005 Express Edition
  • Microsoft Visual Studio .NET 2003 Academic Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2003 Service Pack 1?当用于
    • Microsoft Visual Studio .NET 2003 Academic Edition
    • Microsoft Visual Studio .NET 2003 Enterprise Architect
    • Microsoft Visual Studio .NET 2003 Enterprise Developer
    • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2002 Service Pack 1?当用于
    • Microsoft Visual Studio .NET 2002 专业版
    • Microsoft Visual Studio .NET 2002 企业级开发版
    • Microsoft Visual Studio .NET (2002), Enterprise Architect Edition SP1
关键字:?
kbprb kbtshoot kbexpertiseinter KB944298
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