.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:创建网络映像
在服务器上创建一个文件夹,例如驱动器:\NETFX35。
从网站上下载 .NET Framework 3.5 独立可再发行组件包,并将它保存到在步骤 1 中创建的文件夹中。可以从 Microsoft Download Center(Microsoft 下载中心)下载该组件包。
这个独立的可再发行组件包中包含将 .NET Framework 3.5 部署到 x86、x64 和 ia64 平台的所有支持的操作系统所需的全部组件。此组件包中不包括语言包。
步骤 3:运行安装程序
验证网络上是否有 .NET Framework 3.5 可再发行组件包。
在 Windows 的**“开始”菜单中选择“运行”**。
键入下列内容:
\\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 所需的系统组件。如果不符合系统必备要求,安装将失败。
说明: |
---|
必须严格按组件列出的顺序部署所需组件。如果按其他顺序进行部署,组件安装程序将失败。例如,.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 |
|
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 |
|
.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 |
|
.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 |
|
.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 |
|
表 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:创建管理员安装点
说明: |
---|
若要查看演示如何创建安装点的示例脚本,请参见本文档的附录。 |
创建一个文件夹以存放可再发行组件包。
从 Microsoft Download Center(Microsoft 下载中心)网站下载 .NET Framework 3.5 可再发行组件包,并将它保存到在步骤 1 中创建的文件夹中。
从 .NET Framework 3.5 可再发行组件包 .exe 文件中提取文件,以找到下列组件文件。若要提取文件,请运行下面的命令:
dotnetfx35.exe /x:<ExtractionDestination>
例如:
dotnetfx35.exe /x:C:\NETFX35
将组件的 .exe 文件或 .msi 文件复制到本地计算机上 C:\ 驱动器的根目录。(有关各个组件的位置,请参见表 1。)
在 Windows 的**“开始”菜单中单击“运行”,然后键入 cmd 以打开“命令”**窗口。
将目录切换到 C: 驱动器的根目录。
键入下面的命令,以创建要向其中复制 .exe 文件的目录:
mkdir directoryName
键入对应的组件命令(见表 1),以便在该目录中创建安装点。
关闭**“命令”**窗口。
打开 Windows 资源管理器并导航至 C:\目录名称,以验证是否已提取文件。
将该文件夹及其所有内容移到要用于部署的网络共享中。
步骤 2:将安装程序包添加至 Active Directory 组策略
在 Windows 的**“开始”菜单中,依次单击“所有程序”、“管理工具”和“组件服务”**。
展开**“Active Directory 用户和计算机”**。
随即显示**“Active Directory 用户和计算机”**目录树。
右击域节点,然后单击**“属性”**。
在**“属性”对话框中,单击“组策略”**选项卡。
在**“组策略对象链接”对话框中,单击“组策略”**选项卡。
如果要将策略设置为始终应用于所有计算机(而不论登录用户是谁),请展开**“计算机配置\软件设置”**。
说明: 确保映射到 Active Directory 服务器上的共享位置。否则,将无法创建用于安装的包。
右击**“软件安装”,单击“新建”,然后单击“程序包”**。
在**“打开”**对话框中,浏览到已将部署文件夹复制到的位置,然后选择 .msi 文件。
在**“部署软件”对话框中,单击“已指派”,然后单击“确定”**。
单击**“自动安装”**以在域中的每台计算机上自动安装软件。
单击**“确定”,然后关闭“组件服务”**控制台。
步骤 3:使用组策略设置提升的特权
由于大多数程序包都只允许计算机的本地管理员进行安装,因此应使用提升的特权向组策略中的每台计算机播发程序包。网络管理员可以为一个用户、一台计算机或一组用户创建策略。有关如何创建特殊策略配置文件的更多信息,请参见“系统策略编辑器帮助”。有关如何配置策略的更多信息,请参见“组策略”管理单元中的“帮助”。
在 Windows 的**“开始”菜单中,依次单击“所有程序”、“管理工具”和“组件服务”**。
展开**“Active Directory 用户和计算机”**。
随即显示**“Active Directory 用户和计算机”**目录树。
右击域节点,然后单击**“属性”**。
在**“属性”对话框中,单击“组策略”**选项卡。
在**“组策略对象链接”框中,选择一个“组策略”对象,然后单击“编辑”**。
打开**“计算机配置\管理模板\Windows 组件\Windows Installer”**文件夹。
在详细信息窗格中,双击**“永远以高特权进行安装”**。
在**“属性”对话框中,选择“已启用”选项以打开该设置,然后单击“确定”**。
打开**“用户配置\管理模板\Windows 组件\Windows Installer”**文件夹,并重复步骤 7 和 8。
说明: 您可以使用系统策略编辑器和 Windows Installer 策略来设置“永远以高特权进行安装”策略。必须为计算机和每个用户都设置此策略。如果选择不使用组策略编辑器或系统策略编辑器,可以通过更改 Windows 注册表中的值,在每台计算机上指定相同的设置。
步骤 4:验证是否已准备好将程序包分配给计算机
在**“组件名称 - 英语属性”对话框中,单击“部署”**选项卡。
在**“部署类型”下,单击“已指派”**。
在**“部署选项”**下,选择用于设置组件部署时间和方式的选项。
浏览其他选项卡,并根据需要设置选项。有关详细信息,请参见对话框中的“组策略帮助”。
步骤 5:部署所需的其他组件
若要部署其他 .NET Framework 3.5 组件,请重复步骤 1,并将 .msi 和 .msp 文件添加到指定的 Active Directory 组策略中。
重新部署程序包
在某些情况下,可能需要重新部署软件包。例如,升级或修改程序包时便可能需要如此。
启动**“Active Directory 用户和计算机”控制台。为此,请在 Windows 的“开始”菜单中,选择“管理工具”,然后单击“Active Directory 用户和计算机”**。
在控制台目录树中,右击域节点,然后单击**“属性”**。
单击**“组策略”选项卡,再单击用于部署程序包的组策略对象,然后单击“编辑”**。
展开用于部署程序包的软件安装项所在的**“软件设置”**容器。
单击程序包所在的软件安装容器。
在**“组策略对象编辑器”的右窗格中,右击该程序,选择“所有任务”,然后单击“重新部署应用程序”**。
您将看到以下消息:
Redeploying this application will reinstall the application everywhere it is already installed. Do you want to continue?
单击**“是”**。
关闭**“组策略对象编辑器”控制台,单击“确定”,然后关闭“Active Directory 用户和计算机”**管理单元。
删除程序包
如果不再需要已发布或已分配的程序包,可以将其删除。
启动**“Active Directory 用户和计算机”管理单元。为此,请在 Windows 的“开始”菜单中,单击“管理工具”,然后单击“Active Directory 用户和计算机”**。
在控制台目录树中,右击域名称,然后单击**“属性”**。
单击**“组策略”选项卡,再单击用于部署程序包的组策略对象,然后单击“编辑”**。
展开用于部署程序包的软件安装项所在的**“软件设置”**容器。
单击程序包所在的软件安装容器。
在**“组策略对象编辑器”的右窗格中,右击该程序,选择“所有任务”,然后单击“删除”**。
执行下列操作之一:
单击**“立即从用户和计算机中卸载软件”,然后单击“确定”**。
单击**“允许用户继续使用软件,但阻止新的安装”,然后单击“确定”**。
关闭**“组策略对象编辑器”控制台,单击“确定”,然后关闭“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