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

更新:2007 年 11 月

Microsoft .NET Framework 3.5 提供了两种部署到现场客户端的方式:

  • 管理员安装模式   使用此选项,IT 管理员可通过 Microsoft Systems Management Server (SMS) 或其他软件分发工具部署 .NET Framework。IT 管理员以静默模式运行 .NET Framework 安装程序。如果发生错误,安装程序将退出且不发出任何提示,并记录错误代码。

  • Active Directory 部署   在此选项中,管理员必须将 .NET Framework 3.5 版安装程序包中的各个 .msi 文件按部署顺序添加到组策略中。启用组策略后,处于此组策略范围内的所有客户端在启动并重新连接至网络时,都将自动安装组件。如果发生错误,安装程序将退出且不发出任何提示,并记录错误代码。

备注

本文档中提到的软件(包括但不限于 .NET Framework 3.5 和 Active Directory)均受许可条款和条件的制约。下列说明假定,软件的适当被许可方已查看并接受此类许可条款和条件。这些说明不免除此类许可协议中的任何条款和条件。

对于 Windows XP、Windows 2000 和 Windows Server 2003,必须在计算机上安装 Windows Installer 3.1。您可以从 Microsoft 下载中心网站上的 Windows Installer 3.1 Redistributable 页下载 Windows Installer 3.1。

使用管理员安装模式部署 Microsoft .NET Framework 3.5

以下部署步骤适用于 Windows Server 2003、Windows XP、Windows Vista 和 Windows Server 2008。

运行管理员安装模式

步骤 1:检查系统必备

运行此阶段的管理员安装程序之前,应确保目标计算机具有系统必备的软件和硬件。Windows Installer 3.1 是所有安装的一项系统必备。以下是 .NET Framework 3.5 版所需的组件的列表。如果不符合系统必备要求,则无人参与安装将失败。

  • 在 Windows Server 2003 上,需要安装 Service Pack 1 (SP1)。

  • 在 Windows XP Home Edition 和 Windows XP Professional 上,需要安装 Service Pack 2 (SP2)。

  • 在所有平台上,需要安装 Microsoft Internet Explorer 6.0 Service Pack 1。

步骤 2:创建网络映像

  1. 在服务器上创建一个文件夹,例如驱动器:\NETFX35。

  2. 从网站上下载 .NET Framework 3.5 独立可再发行组件包,并将它保存到在步骤 1 中创建的文件夹中。可以从 Microsoft Download Center(Microsoft 下载中心)下载该组件包。

    这个独立的可再发行组件包中包含将 .NET Framework 3.5 部署到 x86、x64 和 ia64 平台的所有支持的操作系统所需的全部组件。此组件包中不包括语言包。

步骤 3:运行安装程序

  1. 验证网络上是否有 .NET Framework 3.5 可再发行组件包。

  2. 在 Windows 的**“开始”菜单中选择“运行”**。

  3. 键入下列内容:

    \\computer\share\dotnetfx35.exe /q /norestart

安装维护

若要访问安装维护功能,可以在已完成安装的计算机上再次运行安装程序。用户和管理员均应从 Windows“控制面板”的**“添加或删除程序”**中运行安装程序。若要在维护模式下运行安装程序,用户必须在目标计算机上拥有管理权限。

使用 Active Directory 部署 Microsoft .NET Framework 3.5

以下部署步骤适用于 Windows XP (SP2)、Windows Server 2003、Windows Vista 和 Windows Server 2008。

部署 .NET Framework 3.5 的系统必备

网络管理员必须验证所有客户端计算机是否拥有安装 .NET Framework 3.5 所需的系统组件。如果不符合系统必备要求,安装将失败。

Cc160717.alert_note(zh-cn,VS.90).gif说明:

必须严格按组件列出的顺序部署所需组件。如果按其他顺序进行部署,组件安装程序将失败。例如,.NET Framework 2.0 Service Pack 1 要求先安装 Windows Installer 3.1;因此,Windows Installer 列于 .NET Framework 2.0 Service Pack 1 之前。不带星号 (*) 的组件位于 NET Framework 3.5 安装程序包的 WCU 文件夹中。有关如何部署这些组件的信息,请参见如何:使用 Active Directory 部署 .NET Framework

以下是在 Windows Server 2003 上部署 .NET Framework 3.5 的系统必备:

  • Microsoft Windows Server 2003 Service Pack 1

  • Microsoft .NET Framework 2.0 Service Pack 1

  • Microsoft .NET Framework 3.0 Service Pack 1

  • Microsoft Core XML Services (MSXML) 6.0。若要下载此组件,请转到 Microsoft 下载中心网站上的 Microsoft Core XML Services (MSXML) 6.0 页。

  • Windows 图像处理组件

  • XML Paper Specification Shared Components Pack 1.0

  • Microsoft DirectX 9.0 软件开发工具包 (SDK) 的软件光栅器

以下是在 Windows XP 上部署 .NET Framework 3.5 的系统必备:

  • Microsoft Windows XP Service Pack 2

  • Microsoft Internet Explorer 6.0 Service Pack 1

  • Microsoft Windows Installer 3.1

  • Microsoft .NET Framework 2.0 Service Pack 1

  • Microsoft .NET Framework 3.0 Service Pack 1

  • Windows 图像处理组件

  • XML Paper Specification Shared Components Pack 1.0

  • Microsoft DirectX 9.0 软件开发工具包 (SDK) 的软件光栅器

以下是在 Windows Vista 上部署 .NET Framework 3.5 的系统必备。部署 .NET Framework 3.5 之前,请通过 Windows Update 获取这些更新。

  • Microsoft .NET Framework 2.0 累积更新 1

  • Microsoft .NET Framework 3.0 累积更新 1

在 Windows Server 2008 或 Vista Service Pack 1 上执行部署没有系统必备条件。Microsoft .NET Framework 2.0 和 3.0 累积更新 1 包含在 Windows Server 2008 和 Vista Service Pack 1 中。

以上组件受它们自身的许可协议的制约。

使用 Active Directory 部署组件

本节介绍如何使用 Active Directory 在网络中部署特定组件的 Windows Installer 安装程序包。若要部署需要提取文件的组件,您必须在目标计算机上拥有管理特权。

在使用 Active Directory 部署应用程序之前,必须从 .exe 可再发行组件包中提取各个文件,其中包括 Windows Installer 文件。此外,可能还需要提取其他文件。例如,若要部署 .NET Framework 3.5 组件,必须从 .exe 文件中提取 vs_setup.msi 文件以供部署使用。

部署 .NET Framework 之前,应确保目标计算机符合最低配置要求。有关详细信息,请参见 Microsoft .NET Framework 开发中心上的 Deploying & Configuring Applications(部署和配置应用程序)页。

Windows 图像处理组件和 XML Paper Specification Shared Components Pack 1.0 使用 Package Installer(包安装程序)(前身为 Update.exe)。这两个组件未提供 Update.msi。Microsoft 建议使用命令行选项部署这些 Windows 组件。

下表显示了可以使用 Active Directory 部署的组件的列表。

表 1 可使用 Active Directory (x86) 部署的组件

组件

操作系统

.exe 或 .msi 文件的位置

目录

组件命令

是否需要提取文件

Microsoft Core XML Services (MSXML) 6.0

XP、W2K3

wcu\dotNetFramework\dotNetFX30\x86\msxml6.msi

msxml6

msiexec /qb /a msxml6.msi TARGETDIR=c:\msxml6

No

Microsoft DirectX 9.0 软件开发工具包 (SDK) 的软件光栅器

XP、W2K3

wcu\dotNetFramework\dotNetFX30\RGB9RAST_x86.msi

rgbrast

msiexec /qb /a RGB9RAST_x86.msi REBOOT=ReallySuppress TARGETDIR=c:\RGBRAST

No

.NET Framework 2.0 SP1

XP、W2K3

wcu\dotNetFramework\dotNetFX20

适当的 MSI 和 MSP

dotNetFX20

msiexec /a netfx20a_x86.msi /update ASPNET.msp;CLR.msp;CRT.msp;NetFX_CA.msp;NetFX_Core.msp;NetFX_Other.msp;PreXP.msp;WinForms.msp;DW.msp USING_EXUIH=1 REBOOT=ReallySuppress TARGETDIR=c:\dotNetFX20

No

.NET Framework 3.0 SP1

XP、W2K3

wcu\dotNetFramework\dotNetFX30

适当的 MSI 和 MSP

dotNetFX30

msiexec /a netfx30a_x86.msi /update WCF.msp;WCS.msp;WF.msp;WPF1.msp;WPF2.msp;WPF_Other.msp;XPS.msp;WF_32.msp;WPF2_32.msp;WPF_Other_32.msp USING_EXUIH=1 REBOOT=ReallySuppress /l* %WORKFOLDER%\logs\netfx30_x86.log TARGETDIR=%WORKFOLDER%\AIP\NETFX30

No

.NET Framework 3.5

XP、W2K、Vista、W2K8

wcu\dotNetFramework\dotNetFX35\x86\netfx35_x86.exe

dotNetFX35

msiexec /qb /a vs_setup.msi USING_EXUIH=1 REBOOT=reallySuppress TARGETDIR=c:\dotNetFX35

Yes

表 2 可使用 Active Directory (x64) 部署的组件

组件

操作系统

.exe 或 .msi 文件的位置

目录

组件命令

Microsoft Core XML Services (MSXML) 6.0

XP、W2K3

wcu\dotNetFramework\dotNetFX30\x64\msxml6.msi

msxml6

msiexec /qb /a msxml6.msi TARGETDIR=c:\msxml6

Microsoft DirectX 9.0 软件开发工具包 (SDK) 的软件光栅器

XP、W2K3

wcu\dotNetFramework\dotNetFX30\RGB9RAST_x64.msi

rgbrast

msiexec /qb /a RGB9RAST_x64.msi REBOOT=ReallySuppress TARGETDIR=c:\RGBRAST

.NET Framework 2.0 SP1

XP、W2K3

wcu\dotNetFramework\dotNetFX20

适当的 MSI 和 MSP

dotNetFX20

msiexec /a Netfx20a_x64.msi /update ASPNET_64.msp;CLR_64.msp;CRT_64.msp;DW_64.msp;NetFX_Core_64.msp;NetFX_Other_64.msp;WinForms_64.msp;ASPNET.msp;CLR.msp;CRT.msp;NetFX_CA.msp;NetFX_Core.msp;NetFX_Other.msp;PreXP.msp;WinForms.msp;DW.msp USING_EXUIH=1 REBOOT=ReallySuppress TARGETDIR=c:\dotNetFX20

.NET Framework 3.0 SP1

XP、W2K3

wcu\dotNetFramework\dotNetFX30

适当的 MSI 和 MSP

dotNetFX30

msiexec /a netfx30a_x64.msi /update WCF.msp;WCS.msp;WF.msp;WPF1.msp;WPF2.msp;WPF_Other.msp;XPS.msp;WCF_64.msp;WCS_64.msp;WF_64.msp;WPF1_64.msp;WPF2_64.msp;WPF_Other_64.msp USING_EXUIH=1 REBOOT=ReallySuppress TARGETDIR=c:\dotNetFX30

.NET Framework 3.5

XP、W2K、Vista、W2K8

wcu\dotNetFramework\dotNetFX35\x86\netfx35_x64.exe

dotNetFX35

msiexec /qb /a vs_setup.msi USING_EXUIH=1 REBOOT=reallySuppress TARGETDIR=c:\dotNetFX35

通过在 msiexec 命令中添加 /l*v 日志文件,可为每个组件启用日志记录。例如,若要在 .NET Framework 3.5 组件部署中包括一个日志文件,请使用以下命令:

msiexec /qb /l*v netfx35_x86.log /a vs_setup.msi USING_EXUIH=1 REBOOT=reallySuppress TARGETDIR=c:\dotNetFX35

步骤 1:创建管理员安装点

Cc160717.alert_note(zh-cn,VS.90).gif说明:

若要查看演示如何创建安装点的示例脚本,请参见本文档的附录。

  1. 创建一个文件夹以存放可再发行组件包。

  2. Microsoft Download Center(Microsoft 下载中心)网站下载 .NET Framework 3.5 可再发行组件包,并将它保存到在步骤 1 中创建的文件夹中。

  3. 从 .NET Framework 3.5 可再发行组件包 .exe 文件中提取文件,以找到下列组件文件。若要提取文件,请运行下面的命令:

    dotnetfx35.exe /x:<ExtractionDestination>

    例如:

    dotnetfx35.exe /x:C:\NETFX35

  4. 将组件的 .exe 文件或 .msi 文件复制到本地计算机上 C:\ 驱动器的根目录。(有关各个组件的位置,请参见表 1。)

  5. 在 Windows 的**“开始”菜单中单击“运行”,然后键入 cmd 以打开“命令”**窗口。

  6. 将目录切换到 C: 驱动器的根目录。

  7. 键入下面的命令,以创建要向其中复制 .exe 文件的目录:

    mkdir directoryName
    
  8. 键入对应的组件命令(见表 1),以便在该目录中创建安装点。

  9. 关闭**“命令”**窗口。

  10. 打开 Windows 资源管理器并导航至 C:\目录名称,以验证是否已提取文件。

  11. 将该文件夹及其所有内容移到要用于部署的网络共享中。

步骤 2:将安装程序包添加至 Active Directory 组策略

  1. 在 Windows 的**“开始”菜单中,依次单击“所有程序”“管理工具”“组件服务”**。

  2. 展开**“Active Directory 用户和计算机”**。

    随即显示**“Active Directory 用户和计算机”**目录树。

  3. 右击域节点,然后单击**“属性”**。

  4. 在**“属性”对话框中,单击“组策略”**选项卡。

  5. 在**“组策略对象链接”对话框中,单击“组策略”**选项卡。

  6. 如果要将策略设置为始终应用于所有计算机(而不论登录用户是谁),请展开**“计算机配置\软件设置”**。

    Cc160717.alert_note(zh-cn,VS.90).gif说明:

    确保映射到 Active Directory 服务器上的共享位置。否则,将无法创建用于安装的包。

  7. 右击**“软件安装”,单击“新建”,然后单击“程序包”**。

  8. 在**“打开”**对话框中,浏览到已将部署文件夹复制到的位置,然后选择 .msi 文件。

  9. 在**“部署软件”对话框中,单击“已指派”,然后单击“确定”**。

  10. 单击**“自动安装”**以在域中的每台计算机上自动安装软件。

  11. 单击**“确定”,然后关闭“组件服务”**控制台。

步骤 3:使用组策略设置提升的特权

由于大多数程序包都只允许计算机的本地管理员进行安装,因此应使用提升的特权向组策略中的每台计算机播发程序包。网络管理员可以为一个用户、一台计算机或一组用户创建策略。有关如何创建特殊策略配置文件的更多信息,请参见“系统策略编辑器帮助”。有关如何配置策略的更多信息,请参见“组策略”管理单元中的“帮助”。

  1. 在 Windows 的**“开始”菜单中,依次单击“所有程序”“管理工具”“组件服务”**。

  2. 展开**“Active Directory 用户和计算机”**。

    随即显示**“Active Directory 用户和计算机”**目录树。

  3. 右击域节点,然后单击**“属性”**。

  4. 在**“属性”对话框中,单击“组策略”**选项卡。

  5. 在**“组策略对象链接”框中,选择一个“组策略”对象,然后单击“编辑”**。

  6. 打开**“计算机配置\管理模板\Windows 组件\Windows Installer”**文件夹。

  7. 在详细信息窗格中,双击**“永远以高特权进行安装”**。

  8. 在**“属性”对话框中,选择“已启用”选项以打开该设置,然后单击“确定”**。

  9. 打开**“用户配置\管理模板\Windows 组件\Windows Installer”**文件夹,并重复步骤 7 和 8。

    Cc160717.alert_note(zh-cn,VS.90).gif说明:

    您可以使用系统策略编辑器和 Windows Installer 策略来设置“永远以高特权进行安装”策略。必须为计算机和每个用户都设置此策略。如果选择不使用组策略编辑器或系统策略编辑器,可以通过更改 Windows 注册表中的值,在每台计算机上指定相同的设置。

步骤 4:验证是否已准备好将程序包分配给计算机

  1. 在**“组件名称 - 英语属性”对话框中,单击“部署”**选项卡。

  2. 在**“部署类型”下,单击“已指派”**。

  3. 在**“部署选项”**下,选择用于设置组件部署时间和方式的选项。

  4. 浏览其他选项卡,并根据需要设置选项。有关详细信息,请参见对话框中的“组策略帮助”。

步骤 5:部署所需的其他组件

若要部署其他 .NET Framework 3.5 组件,请重复步骤 1,并将 .msi 和 .msp 文件添加到指定的 Active Directory 组策略中。

重新部署程序包

在某些情况下,可能需要重新部署软件包。例如,升级或修改程序包时便可能需要如此。

  1. 启动**“Active Directory 用户和计算机”控制台。为此,请在 Windows 的“开始”菜单中,选择“管理工具”,然后单击“Active Directory 用户和计算机”**。

  2. 在控制台目录树中,右击域节点,然后单击**“属性”**。

  3. 单击**“组策略”选项卡,再单击用于部署程序包的组策略对象,然后单击“编辑”**。

  4. 展开用于部署程序包的软件安装项所在的**“软件设置”**容器。

  5. 单击程序包所在的软件安装容器。

  6. 在**“组策略对象编辑器”的右窗格中,右击该程序,选择“所有任务”,然后单击“重新部署应用程序”**。

    您将看到以下消息:

    Redeploying this application will reinstall the application everywhere it is already installed. Do you want to continue?

  7. 单击**“是”**。

  8. 关闭**“组策略对象编辑器”控制台,单击“确定”,然后关闭“Active Directory 用户和计算机”**管理单元。

删除程序包

如果不再需要已发布或已分配的程序包,可以将其删除。

  1. 启动**“Active Directory 用户和计算机”管理单元。为此,请在 Windows 的“开始”菜单中,单击“管理工具”,然后单击“Active Directory 用户和计算机”**。

  2. 在控制台目录树中,右击域名称,然后单击**“属性”**。

  3. 单击**“组策略”选项卡,再单击用于部署程序包的组策略对象,然后单击“编辑”**。

  4. 展开用于部署程序包的软件安装项所在的**“软件设置”**容器。

  5. 单击程序包所在的软件安装容器。

  6. 在**“组策略对象编辑器”的右窗格中,右击该程序,选择“所有任务”,然后单击“删除”**。

  7. 执行下列操作之一:

    1. 单击**“立即从用户和计算机中卸载软件”,然后单击“确定”**。

    2. 单击**“允许用户继续使用软件,但阻止新的安装”,然后单击“确定”**。

  8. 关闭**“组策略对象编辑器”控制台,单击“确定”,然后关闭“Active Directory 用户和计算机”**控制台。

已知的安装问题

有关已知安装问题的信息,请参见 Microsoft .NET Framework 3.5 Release Notes(Microsoft .NET Framework 3.5 发行说明)。

疑难解答

Microsoft .NET Framework 3.5 日志文件位置

在 .NET Framework 3.5 安装过程中会生成以下日志文件:

  • dd_dotnetfx35error.txt

  • dd_dotnetfx35install.txt

对于非英文版安装,还会生成下列日志文件:

  • dd_dotnetfx35error_lp.txt

  • dd_dotnetfx35install_lp.txt

.NET Framework 中的每个组件还创建自己的日志,包括以下日志:

  • RGB Rasterizer:dd_RGB9Rast_*.txt

  • MSXML6.0:dd_msxml6_*.txt

  • WIC:dd_wic*.txt

  • .NET Framework 2.0 SP1:dd_net_framework20*.txt

  • .NET Framework 3.0 SP1:dd_net_framework30*.txt

  • .NET Framework 3.5 MSI:dd_net_framework35*.txt

在 .NET Framework 3.5 安装过程中,日志文件位于 %temp% 目录下。

对于 Active Directory 部署,请按照如何:使用 Active Directory 部署 .NET Framework 中的说明指定 /lv 日志文件选项,以便为每个组件部署创建日志文件。

Windows Installer 错误代码

有关错误代码的列表,请参见 MSDN 网站上的 Windows Installer Error Codes(Windows Installer 错误代码)页。

附录

下面是一个可用于创建管理员安装点的示例脚本。

set WORKFOLDER=d:\deploy
set dotNetFX35build=%WORKFOLDER%\dotnetfx35.exe
echo Creating Admin Install points for NETFX3 %PROCESSOR_ARCHITECTURE%
 
REM Create folders where work will be done
md %WORKFOLDER%\ext
md %WORKFOLDER%\AIP
md %WORKFOLDER%\logs
pushd %WORKFOLDER%
 
REM Extract the files from the NETFX35 redist SFX
call dotnetfx35.exe /q /x:%WORKFOLDER%\ext

REM ------------------------------------------------------------
REM create the MSXML6 x86 admin install point
md %WORKFOLDER%\AIP\MSXML6_x86
call msiexec /a %WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX30\x86\msxml6.msi /qb /l*v %WORKFOLDER%\logs\MSXML6_x86.log Targetdir=%WORKFOLDER%\AIP\MSXML6_x86

REM create the MSXML6 x64 admin install point
md %WORKFOLDER%\AIP\MSXML6_x64
call msiexec /a %WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX30\x64\msxml6.msi /qb /l*v %WORKFOLDER%\logs\MSXML6_x64.log Targetdir=%WORKFOLDER%\AIP\MSXML6_x64

REM ------------------------------------------------------------
REM create the RGBRAST x86 admin install point
md %WORKFOLDER%\AIP\RGBRAST_x86
call msiexec /a %WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX30\RGB9RAST_x86.msi /qb /l*v %WORKFOLDER%\logs\RGBRAST_x86.log REBOOT=ReallySuppress Targetdir=%WORKFOLDER%\AIP\RGBRAST_x86

REM create the RGBRAST x64 admin install point
md %WORKFOLDER%\AIP\RGBRAST_x64
call msiexec /a %WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX30\RGB9RAST_x64.msi /qb /l*v %WORKFOLDER%\logs\RGBRAST_x64.log REBOOT=ReallySuppress Targetdir=%WORKFOLDER%\AIP\RGBRAST_x64
 
REM ------------------------------------------------------------
REM Extract NETFX 35 x86 components 
md %WORKFOLDER%\ext\netfx35_x86
call %WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX35\x86\netfx35_x86.exe /q /x: %WORKFOLDER%\ext\netfx35_x86

REM Extract NETFX 35 x64 components 
md %WORKFOLDER%\ext\netfx35_x64
call %WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX35\x64\netfx35_x64.exe /q /x: %WORKFOLDER%\ext\netfx35_x64

REM ------------------------------------------------------------
REM create the NETFX35 x86 admin install point
md %WORKFOLDER%\AIP\netfx35_x86
call msiexec /qb /a %WORKFOLDER%\ext\netfx35_x86\vs_setup.msi USING_EXUIH=1 REBOOT=ReallySuppress /l*v %WORKFOLDER%\logs\netfx35_x86.log TARGETDIR=%WORKFOLDER%\AIP\netfx35_x86
 
REM create the NETFX35 x64 admin install point
md %WORKFOLDER%\AIP\netfx35_x64
call msiexec /qb /a %WORKFOLDER%\ext\netfx35_x64\vs_setup.msi USING_EXUIH=1 REBOOT=ReallySuppress /l*v %WORKFOLDER%\logs\netfx35_x64.log TARGETDIR=%WORKFOLDER%\AIP\netfx35_x64


REM ------------------------------------------------------------
REM create the NETFX20 x86 SP1 admin install point

REM 2.0 SP1 files location
Set fx20=%WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX20\
md %WORKFOLDER%\AIP\NETFX20_x86
call msiexec /a %fx20%netfx20a_x86.msi /update %fx20%ASPNET.msp;%fx20%CLR.msp;%fx20%CRT.msp;%fx20%NetFX_CA.msp;%fx20%NetFX_Core.msp;%fx20%NetFX_Other.msp;%fx20%PreXP.msp;%fx20%WinForms.msp;%fx20%DW.msp USING_EXUIH=1 REBOOT=ReallySuppress /l*v %WORKFOLDER%\logs\netfx20_x86.log TARGETDIR=%WORKFOLDER%\AIP\NETFX20

REM create the NETFX20 x64 SP1 admin install point
md %WORKFOLDER%\AIP\NETFX20_x64
call msiexec /a %fx20%Netfx20a_x64.msi /update %fx20%ASPNET_64.msp;%fx20%CLR_64.msp;%fx20%CRT_64.msp;%fx20%DW_64.msp;%fx20%NetFX_Core_64.msp;%fx20%NetFX_Other_64.msp;%fx20%WinForms_64.msp;%fx20%ASPNET.msp;%fx20%CLR.msp;%fx20%CRT.msp;%fx20%NetFX_CA.msp;%fx20%NetFX_Core.msp;%fx20%NetFX_Other.msp;%fx20%PreXP.msp;%fx20%WinForms.msp;%fx20%DW.msp USING_EXUIH=1 REBOOT=ReallySuppress /l*v %WORKFOLDER%\logs\netfx20_x64.log TARGETDIR=%WORKFOLDER%\AIP\NETFX20_x64


REM ------------------------------------------------------------
REM create the NETFX30 SP1 x86 admin install point

REM 3.0 SP1 files location
Set fx30=%WORKFOLDER%\ext\wcu\dotNetFramework\dotNetFX30\
md %WORKFOLDER%\AIP\NETFX30_x86
call msiexec /a %fx30%netfx30a_x86.msi /update %fx30%WCF.msp;%fx30%WCS.msp;%fx30%WF.msp;%fx30%WPF1.msp;%fx30%WPF2.msp;%fx30%WPF_Other.msp;%fx30%XPS.msp;%fx30%WF_32.msp;%fx30%WPF2_32.msp;%fx30%WPF_Other_32.msp USING_EXUIH=1 REBOOT=ReallySuppress /l*v %WORKFOLDER%\logs\netfx30_x86.log TARGETDIR=%WORKFOLDER%\AIP\NETFX30_x64

REM create the NETFX30 SP1 x64 admin install point
md %WORKFOLDER%\AIP\NETFX30_x64
call msiexec /a %fx30%netfx30a_x64.msi /update %fx30%WCF.msp;%fx30%WCS.msp;%fx30%WF.msp;%fx30%WPF1.msp;%fx30%WPF2.msp;%fx30%WPF_Other.msp;%fx30%XPS.msp;%fx30%WCF_64.msp;%fx30%WCS_64.msp;%fx30%WF_64.msp;%fx30%WPF1_64.msp;%fx30%WPF2_64.msp;%fx30%WPF_Other_64.msp USING_EXUIH=1 REBOOT=ReallySuppress /l*v %WORKFOLDER%\logs\netfx30_x64.log TARGETDIR=%WORKFOLDER%\AIP\NETFX30_x64

请参见

概念

.NET Framework 3.5 部署指南(针对应用程序开发人员)