使用 Visual Studio .NET 重新分发 .NET 框架
发布日期: 8/6/2004 | 更新日期: 8/6/2004
Microsoft Corporation
摘要:本文介绍如何使用 Microsoft Visual Studio .NET 将 Microsoft .NET 框架应用程序与 .NET 框架可重新分发软件包 Dotnetfx.exe 一起进行部署。
注如果您选择将 Dotnetfx.exe 与您创建的应用程序一起进行分发,则您必须具有 Microsoft .NET 框架 SDK 的有效授权副本,并且同意与您的授权产品(“授权产品”)相关联的任何使用或分发 Dotnetfx.exe 的行为都在 Microsoft .NET 框架 SDK《最终用户许可协议》(“EULA”)中进行了规定,并且遵守 EULA 的条款。如果您不具有 Microsoft .NET 框架 SDK 的有效授权副本,或者您不同意这些条款和条件,则您无权分发 Dotnetfx.exe。
本页内容
使用 Visual Studio .NET 部署重新分发 .NET 框架
简介
Microsoft®.NET 框架的 1.0 版提供了一个可重新分发的安装程序,它包含运行 .NET 框架应用程序所需的公共语言运行库和 .NET 框架组件。.NET 框架可重新分发软件包作为一个独立的可执行文件 Dotnetfx.exe 提供。.NET 框架要求有授予您重新分发 Dotnetfx.exe 的特定权利的许可协议。如果您以前安装过 Microsoft .NET 框架 SDK、Microsoft®Visual Studio®.NET,或者从 Web 下载过 Dotnetfx.exe,则您已经接受了有关 Dotnetfx.exe 的许可协议。有关该许可协议的条款,请参阅 .NET Framework Redistributable EULA。
您可以在计算机上手动启动和安装 Dotnetfx.exe,也可以将其作为 .NET 框架应用程序的安装程序的组成部分来启动和安装。请注意,要安装 Dotnetfx.exe,需要具有管理员权限。如果您以前安装过 .NET 框架 SDK 或 Microsoft Visual Studio .NET,则您不必安装 Dotnetfx.exe。
本文向 Visual Studio .NET 用户介绍部署方案。有关部署 Dotnetfx.exe 的详细信息,请参阅 .NET Framework Deployment Guide。该 Web 站点提供了详细的部署信息,其中包括的白皮书为 .NET 框架 SDK 用户提供了具体的部署方案。
为了安装 Dotnetfx.exe,必须满足最低配置要求。有关软件和硬件要求及建议的详细信息,请参阅最低配置要求。
从何处获得 .NET 框架可重新分发软件包
下载 Dotnetfx.exe,也可从 Microsoft Windows Update Web 站点下载。或者,您可以从产品 CD 或 DVD 中获取可重新分发软件包。Dotnetfx.exe 位于 .NET 框架 SDK CD 上根目录下的 dotNETRedist 目录中。它位于 Microsoft Visual Studio .NET Windows 组件更新 CD 上的 dotNetFramework 目录中,以及 Microsoft Visual Studio .NET DVD 上的 \wcu\dotNetFramework 目录中。
如果您需要让用户从 Internet 安装 .NET 框架,请勿发布 .NET 框架可重新分发软件包,而应该将用户定向到 Microsoft Windows Update Web 站点。
使用 Visual Studio .NET 部署重新分发 .NET 框架
本部分介绍使用 Visual Studio .NET 分发 .NET 框架可重新分发软件包 Dotnetfx.exe 的一些可能的方案。由于 Dotnetfx.exe 是一个重要的运行库组件,因此您必须具有管理员权限才能在计算机上安装该组件。此外,当您使用 Dotnetfx.exe 重新分发 .NET 框架时,建议您执行无提示安装。
在部署使用 Visual Studio .NET 创建的、依赖于 .NET 框架的应用程序时,目标计算机上必须已经安装了 .NET 框架。不能将 .NET 框架包含在使用 Visual Studio .NET 部署工具创建的 Windows Installer 安装软件包中;必须单独安装它。
部署 .NET 框架应用程序时,有三个可选方案:
•
指示用户手动安装 .NET 框架可执行文件。
•
使用 Setup.exe 引导程序示例安装 .NET 框架可重新分发软件包 (Dotnetfx.exe),然后启动应用程序的 Windows Installer 软件包。
•
网络管理员可以使用电子软件分发工具重新分发 Dotnetfx.exe。有关详细信息,请参阅白皮书 Redistributing the .NET Framework 中的“Distributing Dotnetfx.exe Using an Electronic Software Distribution Tool”。
警告引用 .NET 框架的应用程序的部署项目会自动在检测到的依赖项文件夹中添加一个合并模块(dotnetfxredist_x86_xxx.msm,其中 xxx 表示语言代码)。该合并模块不能重新分发;它仅供项目内部使用,用来防止列出单个 .NET 程序集。默认情况下不包括它;试图包括它将导致生成错误。
手动安装 .NET 框架
.NET 框架可重新分发软件包 Dotnetfx.exe 是独立的可执行文件,可以运行它以安装 .NET 框架。可以从几个地方获得这个可重新分发软件包(有关详细信息,请参阅 从何处获得 .NET 框架可重新分发软件包);但是,不应当假设应用程序的用户知道在哪里获得它或如何安装它。因此,应当修改您的部署项目,以便向用户提供指导。
使用 Visual Studio .NET 部署工具创建的安装程序包含默认启动条件 (MsiNetAssemblySupport),该条件检查目标计算机上是否有 .NET 框架。如果找不到它,安装将暂停,并显示对话框,将如下默认消息显示给用户:“This setup requires the .NET Framework.Please install the .NET Framework and run this setup again.”应当将该消息替换为针对您的应用程序用户自定义的消息。
例如,如果您的应用程序是通过 CD-ROM 分发的,则该消息可能是:“This setup requires the .NET Framework.Please install the .NET Framework by running the file Dotnetfx.exe, which can be found in the NetInstall directory on this CD, and then run this setup again.”
自定义启动条件消息
1.
在 Solution Explorer 中,选择部署项目。
2.
在 View 菜单上,单击 Editor,然后单击 Launch Conditions。
3.
在 Launch Conditions Editor 中,选择 MsiNetAssemblySupport 节点。
4.
在 Properties 窗口中,选择 Message,并替换为您的自定义消息文本。
注默认消息被自动针对该安装程序的本地化版本进行翻译。如果自定义文本,则需要由您自己将它翻译成任何本地化版本。
.NET 框架要求为包含数据访问功能的任何应用程序安装 MDAC 2.6 或更高版本。与 .NET 框架一样,MDAC 无法作为部署项目的一部分进行安装。Microsoft 提供 MDAC_typ.exe,这是一个独立的可执行文件,运行该文件可以安装 MDAC。可以从 Universal Data Access Web 站点下载 MDAC 可重新分发软件包,但不应当假设应用程序的用户知道在哪里获得它或如何安装它。因此,应当修改您的部署项目,以便向用户提供指导。从 Microsoft 产品支持服务 Web 站点上的 Install DCOM and MDAC Through a Windows Installer Package,可以下载一个将 MDAC 安装文件与 Windows Installer (MSI) 软件包封装在一起的示例可执行文件。
如果您的应用程序包括数据访问功能,则还应当添加一个启动条件,以检查是否有 MDAC 2.6 或更高版本。
添加 MDAC 的启动条件
•
在 Solution Explorer 中选择部署项目。从 View 菜单中,指向 Editor 并选择 Launch Conditions。
•
选择 Requirements on Target Machine 节点。从 Action 菜单中,选择 Add Registry Launch Condition。
•
选择 Search for RegistryEntry1 节点。在 Properties 窗口中,选择 RegKey 属性并键入 Software\Microsoft\DataAccess。
•
选择 Root 属性,然后选择 vsdrrHKLM。
•
选择 Value 属性并键入 FullInstallVer。
•
选择 Property 属性并键入 MDACSEARCH。
•
在 Launch Conditions Editor 中,选择 Condition1 节点。在 Properties 窗口中,选择 Condition 属性,然后选择 MDACSEARCH>="2.6"。
•
选择 Message 属性,并键入 MDAC version 2.6 or later must be installed prior to installing this application。可从 Universal Data Access Web 站点下载 MDAC。
注 可以针对您的特定情况修改消息文本。例如,可以指向 MDAC 所在的网络共享。
使用 Setup.exe 引导程序示例安装 .NET 框架
Setup.exe 引导程序示例是一个应用程序,它可以安装 .NET 框架可重新分发软件包,然后启动 .NET 框架应用程序的 Windows Installer 软件包(.msi 文件)。通过一个可编辑的设置文件 settings.ini 可以指定可重新分发软件包和安装程序的位置。
为方便起见,您可以下载 Setup.exe 引导程序示例的预编译版本。它可以自由地重新分发。
将 Setup.exe 引导程序示例与利用 Visual Studio .NET 部署工具创建的安装程序一同使用时,首先需要修改部署项目。默认情况下,部署项目包括一个 Windows Installer 引导程序。可以删除该默认安装程序,因为 .NET 框架可重新分发软件包也包括一个 Windows Installer 引导程序。
对于包括数据访问功能的 .NET 框架应用程序,可以将 Setup.exe 引导程序示例扩展为以无提示方式安装 MDAC 可重新分发程序 MDAC_typ.exe。您需要添加代码以检查是否有 FullInstallVer 的值为 2.6 或更高版本的注册表键 HKLM\Software\Microsoft\DataAccess。您可以从 Install DCOM and MDAC Through a Windows Installer Package 下载将 MDAC 安装文件与 Windows Installer (MSI) 软件包封装在一起的示例可执行文件。
修改部署项目以便与Setup.exe 引导程序示例一起使用
1.
在 Solution Explorer 中,选择部署项目。
2.
在 Project 菜单上,单击 Properties。
3.
在 Property Pages 对话框中,选择 Bootstrapper 属性,并将它设置为 None。
下一步是生成部署项目,并将所产生的 .msi 文件复制到部署位置 — 例如,CD-ROM 或网络共享上的某个目录。还需要将 Setup.exe 引导程序示例和设置文件复制到部署位置,并且必须修改设置文件以反映部署位置。
编辑设置文件以反映部署位置
•
在文本编辑器(例如记事本)中打开文件 settings.ini。
•
找到 Msi=mySetup.msi 项,并将默认路径替换为您的 .msi 文件的路径。例如,如果 mySetup.msi 位于本地计算机上与 Setup.exe 相同的文件夹中,则该路径将为 Msi=mySetup.msi。如果 mySetup.msi 位于网络共享上某个名为 myProjectFolder 的文件夹中,则该路径的一个示例为 Msi=\\myNetworkShare\myProjectFolder\mySetup.msi。如果 mySetup.msi 位于与 Setup.exe 相同的 CD 上的名为 myInstallerFiles 的文件夹中,则示例路径为 Msi=myInstallerFiles/mySetup.msi。
•
找到 FxInstallerPath=c: 项,并且将默认路径替换为 .NET 框架可重新分发软件包 Dotnetfx.exe 的正确路径。例如,如果 Dotnetfx.exe 位于本地计算机上名为 myProjectFolder 的文件夹中,则该路径将为 FxInstallerPath=c:\myProjectFolder\。如果 Dotnetfx.exe 位于网络共享上某个名为 myProjectFolder 的文件夹中,则该路径的一个示例可能为 FxInstallerPath=\\myNetworkShare\myProjectFolder\。如果 Dotnetfx.exe 位于与 Setup.exe 相同的 CD 上的名为 myExecutables 的文件夹中,则示例路径为 FxInstallerPath=myExecutables/。
•
保存 settings.ini 文件。
Setup.exe 引导程序示例会对安装在目标计算机上的 .NET 框架和要安装的应用程序所宿主的 .NET 框架这二者执行内部版本号比较。如果内部版本号不匹配,则 Setup.exe 将安装应用程序所宿主的 .NET 框架版本。如果您希望 Setup.exe 检查 .NET 框架的内部版本号和语言版本,则您必须在 settings.ini 文件中指定要检查的语言。如果您不为 LanguageDirectory 变量指定语言,则 Setup.exe 默认情况下将检查英语版本。
下表列出了可用的语言版本以及可在 settings.ini 文件中指定的区域性名称。
语言
区域性名称
中文(简体)
CHS
中文(繁体)
CHT
法语
fr
德语
de
意大利语
it
日语
ja
朝鲜语
ko
西班牙语
es
编辑设置文件以检查语言版本
1.
在文本编辑器(例如记事本)中打开文件 settings.ini。
2.
找到 'LanguageDirectory= 项。注释掉该项并指定要检查的正确语言版本。例如,如果您希望 Setup.exe 检查是否有法语版本的 .NET 框架,请指定 LanguageDirectory=fr。
3.
保存 settings.ini 文件。
安装 Dotnetfx.exe 的本地化版本
Dotnetfx.exe 已经被本地化为八种语言。有关可用语言的完整列表,请参见上一部分中的表格。下载 Dotnetfx.exe 的本地化版本或 Microsoft Windows Update Web 站点。
在运行 Windows ® 98 操作系统的计算机上安装 .NET 框架可重新分发软件包 Dotnetfx.exe 时,必须安装与计算机上运行的 Windows 98 本地化版本相对应的 Dotnetfx.exe 本地化版本。例如,您必须在运行 Windows 98 德语版的计算机上安装 Dotnetfx.exe 德语版。这一限制仅适用于 Windows 98。在任何语言版本的 Windows Me、Windows 2000、Windows NT®4.0、Windows XP 或 Windows Server 2003 产品系列上,您可以安装任何语言版本的 Dotnetfx.exe。
最低配置要求
本部分介绍要安装 .NET 框架可重新分发软件包的计算机的最低配置要求。如果没有满足最低操作系统和软件要求,则 Dotnetfx.exe 安装程序将会阻止安装可重新分发软件包。需要特别注意的是,不能在运行 Microsoft Windows 95 操作系统的计算机上安装 .NET 框架可重新分发软件包。
平台和软件要求
最低要求
要安装 Dotnetfx.exe,必须在计算机上安装下列带有 Microsoft Internet Explorer 5.01 或更高版本的操作系统之一:
•
Microsoft Windows 98
•
Microsoft Windows 98 Second Edition
•
Microsoft Windows Millennium Edition (Windows Me)
•
带有 Service Pack 6a 的 Microsoft Windows NT 4(Workstation 或 Server)
•
带有最新 Windows Service Pack 和可从 Microsoft Security Web 站点下载的关键更新的 Microsoft Windows 2000(Professional¡¢Server 或 Advanced Server)。
•
Microsoft Windows XP(Home 或 Professional)
•
Microsoft Windows Server 2003 产品系列
警告 如果您在 Windows .NET Server Beta 3 上安装 Dotnefx.exe,则将破坏与操作系统一起安装的 .NET 框架版本。Windows .NET Server Beta 3 会安装 .NET 框架的 1.0.3215 版本。如果您安装更高版本的 .NET 框架,则版本 1.0.3215 将被破坏。如果您安装更高版本,则可以运行和使用该更高版本。但是,您将无法使用版本 1.0.3215(即使是在卸载该更高版本之后)。
建议使用的软件
取决于应用程序的要求,还可能需要安装下列软件中的一个或多个:
•
用于数据访问的 MDAC 2.6 或更高版本,可从 Universal Data Access Web 站点下载。
•
Windows 规范的核心 WMI,它可以从下载中心下载。
注 如果不能满足建议的软件要求,则安装程序将不会阻止安装,也不会警告您缺少这些软件。
建议使用的服务器软件
取决于您的应用程序要求,还可能需要以下服务器软件:
•
用于在服务器上进行数据访问的 MDAC 2.7,可从 Universal Data Access Web 站点下载。
•
Windows 2000、Windows XP (Professional) 和 Windows Server 2003 等服务器上的 Internet 信息服务 (IIS),这是使用 ASP.NET 应用程序所必需的。
硬件要求
最低硬件要求
方案
必需的 CPU
必需的 RAM
客户端
Pentium 90 MHz*
32 MB**
服务器
Pentium 133 MHz*
128 MB**
* 或者运行操作系统所必需的最低 CPU,取两者中较高者。
** 或者运行操作系统所必需的最低 RAM,取两者中较高者。
建议使用的硬件
方案
建议使用的 CPU
建议使用的 RAM
客户端
Pentium 90 MHz 或更快
96 MB 或更高
服务器
Pentium 133 MHz 或更快
256 MB 或更高