.NET Framework 部署指南(针对开发人员)

更新:2011 年 3 月

本主题为那些想要随自己的应用程序安装 .NET Framework 4 版的开发人员提供相关信息。

可以从 Microsoft 下载中心下载 .NET Framework 4 独立可再发行组件包和 .NET Framework 4 语言包。 有关下载链接,请参见独立的可再发行组件包和 Web 引导程序包部分。

本主题包含以下各节:

  • 安装要求

  • 独立的可再发行组件包

  • Web 引导程序包

  • 使用 Visual Studio 2010 重新发布 .NET Framework 4

  • 手动安装 .NET Framework

  • 将可再发行组件包链接到应用程序的安装程序

  • 将语言包链接到应用程序的安装程序

  • 检测 .NET Framework 4

  • 检测语言包

  • 卸载 Microsoft .NET Framework 4

  • 命令行选项

  • 疑难解答

有关系统管理员可以如何在网络中部署 .NET Framework 4 及其系统依赖项的信息,请参见 .NET Framework 部署指南(针对管理员)

安装要求

以下列表总结了安装 .NET Framework 4 的软件和硬件要求。 有关这些要求的详细说明,请参见 .NET Framework 系统要求

注意注意

必须具有管理员特权才能安装 .NET Framework 4。

软件要求

若要安装 .NET Framework 4,必须在目标计算机上安装下列操作系统之一:

  • Windows 7 系列。

  • Windows Server 2008 R2 系列。

  • Windows Server 2008 Server Core R2 Service Pack 1 或更高版本。

  • Windows Vista 系列。

  • Windows Server 2008 系列。

  • Windows XP Home 或 Microsoft Windows XP Professional,均要求为 Service Pack 3 或更高版本。

  • Windows Server 2003 系列,要求为 Service Pack 2 或更高版本。

对于 Windows Server 2003,还必须在目标计算机上安装 Windows 映像处理组件 (WIC):

对于 Windows Server 2008 R2 服务器核心,必须打开以下操作系统功能:

  • .NET Framework 2.0。 使用以下 ocsetup 命令之一:

    • start /w ocsetup NetFx2-ServerCore

    • start /w ocsetup NetFx2-ServerCore-WOW64

  • Windows 64 位上的 Windows 32 位 (WOW64)。 使用以下 ocsetup 命令:

    • start /w ocsetup ServerCore-WOW64

硬件要求

要求

建议的最低要求

CPU

Pentium 1 GHz 或更快

RAM

512 MB 或更大

用于客户端配置文件的磁盘空间

32 位系统:600 MB

64 位系统:1.5 GB

用于完整配置文件的磁盘空间

32 位系统:850 MB

64 位系统:2 GB

独立的可再发行组件包

独立的可再发行组件包包含在指定的目标平台上部署 .NET Framework 4 所需的全部组件。 但是,这些可执行文件不包含语言包。 可以使用独立的语言包来安装语言支持。

下表列出了用于每个配置文件和平台的独立的可再发行组件包。

独立包

EXE 名称

配置文件

目标平台

适用于 x86 和 x64 的 .NET Framework 4

dotNetFx40_Full_x86_x64.exe

完全

x86 和 x64

适用于 IA-64 的 .NET Framework 4

dotNetFx40_Full_x86_ia64.exe

完全

x86 和 IA-64

适用于 x86 的 .NET Framework 4

dotNetFx40_Full_x86.exe

完全

仅 x86

适用于 x86 和 x64 的 .NET Framework 4 Client Profile

dotNetFx40_Client_x86_x64.exe

客户端

x86 和 x64

适用于 x86 的 .NET Framework 4 Client Profile

dotNetFx40_Client_x86.exe

客户端

仅 x86

适用于服务器核心的 .NET Framework 4(只能在 Windows Server 2008 Server Core R2 操作系统上使用)

dotNetFx40_Full_x86_x64_SC.exe

完全

x64 服务器核心

dotNetFx40_Full_x86_64.exe 和 dotNetFx40_Client_x86_64.exe 包是针对 x86 和 x64 计算机设计的。 对于大多数部署方案,建议使用这些包。 但这些包不支持基于 IA-64 的计算机。

如果您计划仅在 x86 计算机上安装 .NET Framework 4,则可使用 dotNetFx40_Full_x86.exe 或 dotNetFx40_Client_x86.exe 包。 不要将这些包用于 64 位操作系统上的安装。 (Client Profile 包不可用于在基于 IA-64 的计算机上重新发布。)

Web 引导程序包

Web 引导程序包是基于 Web 的安装程序,可简化安装过程。 这些轻量文件将在安装期间从网站上下载必需的组件。 每个包都需要 Internet 连接以及检测、下载并安装必需的组件和匹配用户操作系统语言的语言包。 可以使用独立的语言包来安装其他的语言支持。

注意注意

Web 引导程序包不会在 Windows Server 2008 Server Core R2 计算机上运行。

下表列出了用于每个配置文件的 Web 引导程序包。

引导程序包

EXE 名称

配置文件

目标平台

.NET Framework 4

dotNetFx40_Full_setup.exe

完全

所有 CPU

.NET Framework 4 Client Profile

dotNetFx40_Client_setup.exe

客户端

x86 和 x64

通过使用 Web 引导程序,可以在计算机上手动启动和安装可再发行组件包。 也可以作为 .NET Framework 4 应用程序的安装程序的一部分来启动和安装可再发行组件包。

使用 Visual Studio 2010 重新发布 .NET Framework 4

在部署使用 Microsoft Visual Studio 2010 创建的并需要 .NET Framework 4 的应用程序时,必须首先在目标计算机上安装 .NET Framework,然后才能安装该应用程序。 可以在您使用 Visual Studio 2010 安装项目创建的安装程序可执行文件中包括 .NET Framework 4。 可以通过三种方法来执行此操作:使用 Visual Studio 安装项目、使用 ClickOnce 应用程序部署或使用 InstallShield 项目。

如果您创建一个 .NET Framework 的安装程序,则可以选择将其链接到您的应用程序的安装过程以监控 .NET Framework 的安装。 此方法将在将 .NET Framework 链接到应用程序的安装程序 一节中讨论。 还可链接 .NET Framework 语言包,除非正在使用 Web 引导程序。 此方法将在将语言包链接到应用程序的安装程序 一节中讨论。

如果您无法创建安装程序文件,则可以让用户手动安装 .NET Framework,如下一节中所述。

注意注意

有关在服务器核心计算机上安装 .NET Framework 4 的信息,请参见将语言包链接到应用程序的安装程序一节。

在安装项目中包括 .NET Framework

在将 Visual Studio 2010 安装项目配置为随您的应用程序一起安装 .NET Framework 4 之后,.NET Framework 4 将会与您的应用程序打包在一起。 您的应用程序的安装程序会检查是否已安装 .NET Framework 4。如果有需要,则会在安装您的应用程序之前安装它。

在 Visual Studio 2010 中,按照下列步骤创建一个新的安装项目:

  1. 在**“文件”菜单中单击“新建”,再单击“项目”**。

  2. 在左窗格中,单击**“其他项目类型”,单击“安装和部署”,再单击“Visual Studio Installer”**。

  3. 在**“名称”框中,键入项目名称,然后单击“确定”**。

  4. 在“解决方案资源管理器”中,右击安装项目名称,单击**“添加”**,然后添加项目输出、合并模块、文件和程序集。

  5. 在“解决方案资源管理器”中,右击安装项目名称,然后单击**“属性”**。

  6. 在**“属性页”对话框中单击“系统必备组件”**。

  7. 在**“系统必备”对话框中,确保选中“创建用于安装系统必备组件的安装程序”**复选框。

  8. 在系统必备组件列表中,找到 .NET Framework 4,然后选择所需的配置文件(.NET Framework 4 或 .NET Framework 4 Client Profile)。

  9. 单击一个选项以指定系统必备组件的源位置,然后单击**“确定”**。

    如果您提供 .NET Framework 4 下载位置的 URL,则可以指定 Microsoft 下载中心网站或您自己的网站。 如果您将可再发行组件包放置在您自己的服务器上,则它必须为完整的可再发行组件包,而不是 Web 引导程序。 只可以链接到 Microsoft 下载中心上的 Web 引导程序。 该 URL 还可以指定为要用于分发自己的应用程序的 CD。

  10. 在**“属性页”对话框中,单击“确定”**。

在 ClickOnce 部署中包括 .NET Framework

通过 ClickOnce 部署,可以将基于 Windows 的应用程序发布到 Web 服务器或网络文件共享,从而简化安装。 Visual Studio 提供对使用 ClickOnce 部署的应用程序进行发布和更新的完全支持。 ClickOnce 部署适用于使用 Visual Basic 和 Visual C# 创建的项目,但不适用于 Visual C++。

在 Visual Studio 2010 中通过以下步骤选择 ClickOnce 部署:

  1. 打开要发布的应用程序项目。

  2. 在解决方案资源管理器中,右击项目名称,并单击**“属性”**。

  3. 单击**“发布”**窗格。

  4. 单击**“系统必备”**按钮。

  5. 在**“系统必备”对话框中,确保选中“创建用于安装系统必备组件的安装程序”**复选框。

  6. 在系统必备组件列表中,找到 .NET Framework 4,然后选择所需的配置文件(.NET Framework 4 或 .NET Framework 4 Client Profile)。

  7. 单击一个选项以指定系统必备组件的源位置,然后单击**“确定”**。

    如果您提供 .NET Framework 4 下载位置的 URL,则可以指定 Microsoft 下载中心网站或您自己的网站。 如果您将可再发行安装包放置在您自己的服务器上,则它必须为完整的可再发行组件包,而不是 Web 引导程序。 只可以链接到 Microsoft 下载中心上的 Web 引导程序。 该 URL 还可以指定为要用于分发自己的应用程序的 CD。

  8. 在**“属性页”对话框中,单击“确定”**。

随 InstallShield 包括 .NET Framework

InstallShield 允许您通过 Visual Studio 2010 发布基于 Windows 的应用程序。

在 Visual Studio 2010 中,按照下列步骤创建一个新的安装项目:

  1. 在**“文件”菜单中单击“新建”,再单击“项目”**。

  2. 在左窗格中,单击**“其他项目类型”,单击“安装和部署”,再单击“InstallShield 2010”**。

  3. 在**“名称”框中,键入项目名称,然后单击“确定”**。

  4. 如果您是新用户,请单击**“转到 InstallShield”**以下载 InstallShield Limited Edition for Microsoft Visual Studio 2010。 重新启动 Visual Studio 2010。

  5. 转到**“项目助手”向导,单击“应用程序文件”以添加项目输出。 可通过“项目助手”**配置其他项目特性。

  6. 转到**“安装要求”**,选择要安装的操作系统和 .NET Framework 的版本。

  7. 右击安装项目,然后单击**“生成”**。

手动安装 .NET Framework

在某些情况下,与您的应用程序一起自动安装 .NET Framework 4 可能不可行。 此时,可以让用户自行安装 .NET Framework。 可再发行组件包以多种配置形式提供(请参见本主题前面的独立的可再发行组件包和 Web 引导程序包节)。 在安装过程中,请提供有关说明,介绍用户应如何查找并安装 .NET Framework。

将 .NET Framework 链接到应用程序的安装程序

.NET Framework 4 提供以下两种方法,使您可以使用命名行命令将 .NET Framework 安装过程纳入(链接到)应用程序的安装过程中: 

  • 在您的再发行媒体中包括 .NET Framework 文件的完整集合,以便用户在安装过程中不需要从网站上下载任何其他文件。

  • 让 .NET Framework 安装过程使用 Web 引导程序包确定需要哪些组件,然后从网站上仅下载并安装所需的组件。

以下两节对这两个选项进行了探讨。

无论您选择哪个选项,若要链接 .NET Framework 4 安装过程,请从命令行中运行该可再发行组件包,并在可再发行组件的 .exe 名称后使用以下安装命令行选项,并相应地处理错误代码:

<.NET Framework redistributable> /q /norestart /ChainingPackage <packageName>
注意注意

本主题中的示例假定链接包名称为 MyProductName。

有关选项的完整列表,请参见命名行选项一节。

有关链接包的示例,请参见如何:获取 .NET Framework 4 安装程序的进度

在再发行媒体中包括 .NET Framework 文件

如果要在 .NET Framework 安装过程中包括所有组件,请使用独立的可再发行组件包。 这些包包括对于在 x86、x64 和 IA-64 计算机上所支持的操作系统上安装 .NET Framework 4 所必需的组件。 例如,如果要使用独立的可再发行组件包链接 x86 或 x64 计算机上的 .NET Framework Client Profile 安装过程,请使用下列命令:

dotNetFx40_Client_x86_x64.exe /q /norestart /ChainingPackage "MyProductName"
注意注意

此方法不会链接并安装语言包。(请参见将语言包链接到应用程序的安装程序一节。)

让 .NET Framework 安装过程决定

此选项使用 Web 引导程序程序包来仅安装必需的组件。 可使用具有默认语言设置的 Web 引导程序部署或通过使用 /LCID 命名行选项指定另外的语言包。

  • 使用默认语言设置

    如果没有指定 /LCID 命名行选项,则 Web 引导程序自动下载与用户的多语言用户界面 (MUI) 设置匹配的语言包。 例如,若要使用 Web 引导程序包链接 x86 或 x64 计算机上完整的 .NET Framework 安装过程,请将下列命令添加到应用程序的安装过程:

    dotNetFx40_Full_setup.exe /q /norestart /ChainingPackage "MyProductName"
    

    如果选中此选项,将自动下载并安装与用户的 MUI 设置匹配的语言包。

  • 重写默认语言设置

    如果指定 /LCID 命名行选项,则 Web 引导程序将不执行自动检测,而是下载您指定的语言包。 例如,如果要链接 x86 或 x64 计算机上完整的 .NET Framework 安装过程并安装日语语言包,请将下列命令添加到应用程序的安装过程:

    dotNetFx40_Full_setup.exe /q /norestart /ChainingPackage "MyProductName" /LCID 1041
    
    注意注意

    不同的语言包可能具有不同的发布日期。如果指定的语言包在下载中心不可用,则安装程序将安装不带语言包的 .NET Framework。此外,如果 .NET Framework 4 已安装在用户计算机上,则 Web 引导程序将仅安装语言包。

跟踪并取消应用程序的安装程序中的无提示安装

.NET Framework 4 安装程序可能经常会作为系统必备组件包括在应用程序的安装程序中。 为了为需要 .NET Framework 4 的应用程序提供自定义或统一的安装体验,您可能需要在显示安装进度视图的同时,在不提示的情况下启动并跟踪 .NET Framework 4 安装程序。 若要实现此功能,请参见 MSDN Library。

将语言包链接到应用程序的安装程序

下表提供了适用于指定目标平台的包含本地化资源的独立语言包可执行文件的列表。 这些可执行文件不包含安装 .NET Framework 4 语言包所必需的非特定语言二进制文件。 culture 指定支持的语言。

如果使用 Web 引导程序,则不需要链接语言包。

包名称

配置文件

目标平台

dotNetFx40LP_Full_x86_x64culture.exe

完全

x86 和 x64

dotNetFx40LP_Full_x86_ia64culture.exe

完全

x86 和 IA-64

dotNetFx40LP_Full_x86culture.exe

完全

仅 x86

dotNetFx40LP_Client_x86_x64culture.exe

客户端

x86 和 x64

dotNetFx40LP_Client_x86culture.exe

客户端

仅 x86

dotNetFx40LP_Full_x86_x64culture_SC.exe(只能在 Windows Server 2008 Server Core R2 操作系统上使用)

完全

x64 服务器核心

注意注意

Client Profile 语言包不可用于在基于 IA-64 的计算机上重新发布。

这些包的一些示例为 dotNetFx40LP_Full_x86_x64de.exedotNetFx40LP_Full_x86_x64ja.exe

例如,若要在 x86 或 x64 计算机上部署带有德语语言包的完整的 .NET Framework 4,请使用下列命令:

dotNetFx40LP_Full_x86_x64de.exe /q /norestart /ChainingPackage "MyProductName"

有关命名行选项的完整列表,请参见命名行选项一节。

检测 .NET Framework 4

.NET Framework 4 安装程序在安装成功时会写入一些注册表项。 通过检查下表中列出的注册表项,可以测试是否安装了 .NET Framework 4。

配置文件

注册表项名称

完全

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full

名称: Install

类型:DWORD

数据: 1

客户端

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client

名称: Install

类型:DWORD

数据: 1

检测语言包

通过检查下表中列出的注册表项,可以测试是否安装了特定的语言包。 LCID 指定一个区域设置标识符;有关这些标识符的列表,请参见支持的语言。

配置文件

注册表项名称

完全

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\LCID

名称: Install

类型:DWORD

数据: 1

客户端

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client\LCID

名称: Install

类型:DWORD

数据: 1

例如,若要检测是否安装了完整的日语语言包,请检查注册表中的下列值:

Key: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\1041
Name: Install
Type: DWORD
Data: 1

卸载 .NET Framework 4

可以使用控制面板中的**“添加或删除程序”**卸载 .NET Framework 4。  必须首先卸载 .NET Framework 4 Extended 版本,才能卸载 .NET Framework 4 Client Profile。

对于服务器核心操作系统,必须使用以下命令行操作卸载 .NET Framework 4:

  1. 卸载 .NET Framework 4 Extended 版本:

    %windir%\Microsoft.NET\Framework64\v4.0.30319\SetupCache\Extended\setup.exe /uninstall /x86 /x64 /ia64 /parameterfolder Extended /q
    
  2. 卸载 .NET Framework 4 Client Profile:

    %windir%\Microsoft.NET\Framework64\v4.0.30319\SetupCache\Client\setup.exe /uninstall /x86 /x64 /parameterfolder Client
    

命令行选项

下表列出了在从命令行运行 .NET Framework 4 可再发行组件安装程序时可以包括的选项。

选项

说明

/q

设置安静模式。

/norestart

防止安装程序自动重新启动。 如果使用此选项,则链接应用程序必须捕获返回代码并处理重新启动操作(请参见跟踪.NET Framework 4)。

/repair

触发修复功能

/LCID LCID

其中 LCID 指定一个区域设置标识符(请参见支持的语言)

安装由 LCID 指定的语言包,并强制使用此语言显示所显示的 UI(除非设置为安静模式)。

对于 Web 引导程序,此选项将链接并安装网站上的语言包。

注意注意
请勿在安装 .NET Framework 语言包时使用此选项。

/passive

设置被动模式;显示指示此安装正在进行的进度栏,但不向用户显示任何提示或错误消息。 在此模式下,安装程序必须处理返回代码。

/showfinalerror

设置被动模式,但如果安装未成功,则显示错误。 如果安装未成功,则此选项要求用户交互。

/promptrestart

在被动模式下,如果安装程序需要重新启动才能完成,则会提示用户。 如果需要重新启动,则此选项要求用户交互。

/CEIPConsent

覆盖默认行为并向 Microsoft 发送匿名反馈以改善将来的部署体验。 仅在应用程序安装程序询问您是否同意安装时以及在用户授权向 Microsoft 发送匿名反馈时才使用此选项。

/chainingpackage PackageName

指定执行链接的可执行文件的名称。 向 Microsoft 发送此信息作为匿名反馈以帮助改进将来的部署体验。

如果包名称包含空格,则可以用双引号作为分隔符;例如:/chainingpackage "Chaining Product"。 有关链接包的示例,请参见 MSDN Library 中的Getting Progress Information from an Installation Package(从安装包获取进度信息)。

支持的语言

LCID

语言 - 国家/地区

区域性

1025

阿拉伯语 - 沙特阿拉伯

ar

1028

中文 - 台湾

zh-cht

1029

捷克语

cs

1030

丹麦语

da

1031

德语 - 德国

de

1032

希腊语

el

1033

英语 - 美国

不可用

1035

芬兰语

fi

1036

法语 - 法国

fr

1037

希伯来语

he

1038

匈牙利语

hu

1040

意大利语 - 意大利

it

1041

日语

ja

1042

朝鲜语

ko

1043

荷兰语 - 荷兰

nl

1044

挪威语(博克马尔语)

no

1045

波兰语

pl

1046

葡萄牙语 - 巴西

pt-BR

1049

俄语

ru

1053

瑞典语

sv

1055

土耳其语

tr

2052

中文 - 中国

zh-chs

2070

葡萄牙语 - 葡萄牙

pt-PT

3082

西班牙语 - 西班牙(现代排序)

es

疑难解答

返回代码

下表列出了 .NET Framework 4 可再发行安装程序最常见的返回代码。 所有版本的安装程序返回的代码相同。有关详细信息,请参见下一节“下载错误代码”。

返回代码

说明

0

安装已成功完成。

1602

用户已取消安装。

1603

安装期间发生错误。

1614

需要重新启动才能完成安装。 此消息指示安装成功。

3010

需要重新启动才能完成安装。 此消息指示安装成功。

5100

用户计算机不满足系统要求。

5101

内部状态失败。

下载错误代码

其他错误代码:

请参见

概念

安装 .NET Framework

其他资源

.NET Framework 部署指南(针对管理员)

修订记录

日期

修订记录

原因

2011 年 3 月

添加了有关 Windows Server 2008 服务器核心的信息。

信息补充。