Microsoft .NET Framework 3.0 Administrator Deployment Guide 

Microsoft .NET Framework 3.0 offers two ways to facilitate deployment to field clients:

  • Administrator Mode Setup   Administrator-mode setup enables IT administrators to deploy the .NET Framework through Microsoft Systems Management Server (SMS) or other software distribution tools. The IT administrator runs the .NET Framework setup in silent mode. If errors occur, setup quits silently and logs an error code.

  • Active Directory Deployment   In Active Directory deployment, the administrator must add individual .msi files from the .NET Framework 3.0 installation package into the group policy in the order in which the .msi files should be deployed. After the group policy is enabled, any clients that are part of this group policy will automatically install the components when they boot and reconnect to the network. If errors occur, setup quits silently and logs an error code.

    NoteNote:

    The software referenced in this document, including without limitation, the .NET Framework 3.0 and Active Directory, are each subject to license terms and conditions. These instructions assume that such license terms and conditions have been reviewed and accepted by the appropriate licensees of the software. These instructions do not waive any of the terms and conditions of such license agreements.

For Windows XP, Windows 2000, and Windows Server 2003, Windows Installer 3.1 must be installed on the computer. To download Windows Installer 3.1, go to the Windows Installer 3.1 Redistributable page on the Microsoft Download Center Web site.

Deploying the Microsoft .NET Framework 3.0 with Administrator Mode Setup

The following deployment steps apply to Windows Server 2003 and Windows XP. In Windows Vista and Windows Server code-named "Longhorn," the .NET Framework 3.0 is a feature of the operating system. For information on deploying the .NET Framework 3.0 for Windows Vista and "Longhorn," see the Deployment Process: Overview page on the Microsoft Web site.

Running Administrator Mode Setup

Running administrator mode setup requires a sequence of steps.

Step 1: Check the Prerequisites

Before running the administrator setup, make sure that the target computer meets the software and hardware prerequisites. Windows Installer 3.1 is a prerequisite for all installations. The following is a list of components required for the .NET Framework 3.0. Unattended setup will fail if the prerequisites are not met.

  • On Windows Server 2003, Service Pack 1 is required.

  • On Windows XP Home Edition and Windows XP Professional, Service Pack 2 is required.

  • On all platforms, Microsoft Internet Explorer 6.0 Service Pack 1 is required.

Step 2: Create a Network Image

  1. Create a folder on the server such as drive:\NETFX3.

  2. Download the .NET Framework 3.0 redistributable package from the Web and save it in the folder you created in step 1.

    Download locations for the packages are:

    NoteNote:

       The .NET Framework 3.0 supports IA64 only on Windows Server "Longhorn".

Step 3: Run Setup

  1. Verify that the .NET Framework 3.0 redistributable package is available on the network.

  2. In the Windows Start menu, choose Run.

  3. Type the following:

    \\ computer \ share \ .NET Framework 3.0 setup EXE Name /q /norestart

    For example:

    \\server\dotnetfx3\dotnetfx3.exe /q /norestart

Installation Maintenance

You can run setup again on a computer with an existing installation to access setup maintenance features. Both users and administrators should run setup from Add or Remove Programs in the Windows Control Panel. To run setup in maintenance mode, users must have administrative permissions on the target computer.

Deploying Microsoft the .NET Framework 3.0 Using Active Directory

The following deployment steps apply to Windows Server 2003 and Windows XP. In Windows Vista and Windows Server code-named "Longhorn," the .NET Framework 3.0 is a feature of the operating system. For information on deploying the .NET Framework 3.0 for Windows Vista and "Longhorn," see the guidelines for those operating systems.

Prerequisites for Deploying the .NET Framework 3.0

Network administrators must verify that all client computers have the system components required for installing the .NET Framework 3.0. Installation will fail if the prerequisites are not met.

NoteNote:

   You must deploy the required components in the order that they are listed. The component installation setup will fail if they are deployed in a different order. For example, the .NET Framework 2.0 requires that you install Windows Installer 3.1 first, so Windows Installer is listed before the .NET Framework 2.0. The components without an asterisk (*) are located in the WCU folder of the NET Framework 3.0 setup package. For information on how to deploy these components, see the Deploying a Component using Active Directory section later in this topic.

The following are the prerequisites for deploying the .NET Framework 3.0 on Windows Server 2003:

  • Microsoft Windows Server 2003 Service Pack 1*

  • Microsoft .NET Framework 2.0

  • Microsoft Core XML Services (MSXML) 6.0. To download this component, go to the Microsoft Core XML Services (MSXML) 6.0 page on the Microsoft Download Center Web site.

  • Windows Imaging Component

  • XML Paper Specification Shared Components Pack 1.0

  • Software rasterizer for the Microsoft DirectX 9.0 Software Development Kit (SDK)

    NoteNote:

    All components in the preceding list, except the Microsoft Core XML Services 6.0, are subject to their own license agreements.

The following are the prerequisites for deploying the .NET Framework 3.0 on Windows XP:

  • Microsoft Windows XP Service Pack 2*

  • Microsoft Internet Explorer 6.0 Service Pack 1*

  • Microsoft Windows Installer 3.1*

  • Microsoft .NET Framework 2.0

  • Windows Imaging Component

  • XML Paper Specification Shared Components Pack 1.0

  • Software rasterizer for the Microsoft DirectX 9.0 Software Development Kit (SDK)

    NoteNote:

    All components in the preceding list are subject to their own license agreements.

Deploying a Component Using Active Directory

This section describes how to deploy the Windows Installer setup package for a specific component across a network, using Active Directory. To deploy components that require file extraction, you must have administrator privileges on the target computers.

Before you can deploy applications using Active Directory, you must extract individual files from the .exe redistributable package. The Windows Installer file must be extracted from the .exe file. You might need to extract additional files as well. For example, to deploy the .NET Framework 2.0 redistributable package, the Netfx.msi file must be extracted from the .exe file to be used for deployment.

Before deploying the .NET Framework 2.0, make sure that target computers meet the minimum configuration requirements. For details, see the Deploying & Configuring Applications page on the Microsoft .NET Framework Developer Center.

Windows Imaging Component and XML Paper Specification Shared Components Pack 1.0 use the Package Installer technology (formerly Update.exe). Update.msi is not provided for these two components. Microsoft recommends that you use the command-line option to deploy these two Windows components.

The following table shows the list of components that can be deployed using Active Directory.

Table1 Components that can be deployed using Active Directory

Component .exe or .msi file location Directory name Component command File extraction required

.NET Framework 2.0

wcu\dotnetFramework\dotnetfx.exe

dotnetfx

dotnetfx.exe /q /c:"msiexec /qb /a netfx.msi USING_EXUIH=1 REBOOT=ReallySuppress TARGETDIR=c:\dotnetfx"

Yes

Microsoft Core XML Services (MSXML) 6.0

wcu\MSXML\msxml6.msi

msxml6

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

No

Software Rasterizer for the Microsoft DirectX 9.0 Software Development Kit (SDK)

wcu\RGBRAST\x86\RGB9RAST_x86.msi

RGBRAST

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

No

.NET Framework 3.0

vs_setup.msi

NETFX3

msiexec /qb /a vs_setup.msi NOVSUI=1 TARGETDIR=c:\NETFX3

No

Windows Communication Foundation

wcu\WCF\wcf.exe

WCF

wcf.exe /q /c:"msiexec /qb /a wcf.msi REBOOT=ReallySuppress TARGETDIR=c:\wcf"

Yes

Windows Presentation Foundation

wcu\WPF\wpf.msi

WPF

msiexec /qb /a wpf.msi STANDALONE=no REBOOT=ReallySuppress TARGETDIR=c:\wpf

No

Windows Workflow Foundation

wcu\WF\WF_3.0_x86.msi

WF

msiexec /qb /a WF_3.0_x86.msi ARPSYSTEMCOMPONENT=1 STANDALONE=no REBOOT=ReallySuppress TARGETDIR=c:\WF

No

NoteNote:

   You can enable logging for each component by adding /l* logfile to the msiexec command. For example, to include a log file for the Windows Presentation Foundation deployment, use syntax such as the following:

msiexec /qb /l* WPF_x86.log /a wpf.msi STANDALONE=no REBOOT=ReallySuppress TARGETDIR=c:\wpf

For a verbose log file, use /lv logfile in the command.

Step 1: Create the administrator install point

  1. Download the .NET Framework 3.0 redistributable package from the Web and save it in the folder you created earlier.

    Download locations for the packages are:

    NoteNote:

    The .NET Framework 3.0 supports IA64 only on Windows Server "Longhorn."

  2. Extract files from the .NET Framework 3.0 redistributable .exe file to find the component files listed below. To extract files, run the following command:

    .NET Framework 3.0 Redist EXE Name /x: ExtractionDestination

    For example, the following command extracts files to the \NETFX3 folder:

    dotnetfx3.exe /x:C:\NETFX3

  3. Copy the component's .exe file or .msi file to the root directory of the C:\ drive on your local computer. (For the location of components, see Table 1 earlier in this section.)

  4. In the Windows Start menu, click Run and then type cmd to open a Command window.

  5. Change the directory to the root directory of the C: drive.

  6. Type the following command to create a directory in which to copy the .exe file:

    mkdir directoryName

  7. Type the corresponding component command (see Table 1 earlier in this section) to create the install point in the directory

  8. Close the Command window.

  9. Open Windows Explorer and navigate to C:\directoryName to verify that the files were extracted.

  10. Move the folder and all its contents to the network share you intend to use for deployment.

    NoteNote:

       For a sample script showing how to create the install point, see the Appendix section later in this topic.

Step 2: Add a setup package to an Active Directory group policy

  1. In the Windows Start menu, click All Programs and then click Administrative Tools. and then click Component Services.

  2. Expand Active Directory Users and Computers.

    The Active Directory Users and Computers tree is displayed.

  3. Right-click the domain node and then click Properties.

  4. In the Properties dialog box, click the Group Policy tab.

  5. In the Group Policy Objects Links dialog box, click the Group Policy tab.

  6. If you intend to set policies that apply to computers regardless of who logs on to them, expand Computer Configuration\Software Settings.

    NoteNote:

    Ensure that you map to the shared location on the Active Directory server; otherwise, it will not let you create a package for installation.

  7. Right-click Software installation, click New, and then click Package.

  8. In the Open dialog box, browse to the location where you copied the deployment folder and then select the .msi file.

  9. In the Deploy Software dialog box, click Assigned and then click OK.

  10. Click Auto Install to install the software automatically on every computer in the domain.

  11. Click OK and then close the Component Services console.

Step 3: Set the elevated privileges Using Group Policy

Because most packages allow only local administrators of the computer to install the package, you must use elevated privileges to advertise the package per-computer in Group Policy. Network administrators can create policies for one user, one computer, or a group of users. For more information on creating special policy profiles, see the System Policy Editor Help. For more information on configuring policies, see the Group Policy console Help.

  1. In the Windows Start menu, click All Programs, click Administrative Tools, and then click Component Services.

  2. Expand Active Directory Users and Computers.

    The Active Directory Users and Computers tree is displayed.

  3. Right-click the domain node and then click Properties.

  4. In the Properties dialog box, click the Group Policy tab.

  5. In the Group Policy Objects Links box, select a Group Policy object, and then click Edit.

  6. Open the Computer Configuration\Administrative Templates\Windows Components\Windows Installer folder.

  7. In the details pane, double-click Always install with elevated privileges.

  8. In the Properties dialog box, select the Enabled option to turn the setting on, and then click OK.

  9. Open the User Configuration\Administrative Templates\Windows Components\Windows Installer folder and repeat steps 7 and 8.

    NoteNote:

    You can use the System Policy Editor and Windows Installer policy to set the Always install with elevated privileges policy. You must set the policy for the computer and for each user. If you choose not to use the Group Policy Editor or the System Policy Editor, you can specify the same setting on each computer by changing a value in the Windows registry.

Step 4: Verify that the package is ready to be assigned to computers

  1. In the Component Name - English Properties dialog box, click the Deployment tab.

  2. Under Deployment type click Assigned.

  3. Under Deployment options, select the options for when and how to deploy the component.

  4. Browse the other tabs and set options as necessary. For details, see Group Policy Help.

Step 5: Deploy other required components

To deploy other components, repeat Step 1: Create the administrator install point and add the .msi file to the designated Active Directory Group Policy.

Redeploying a Package

In some cases you might want to redeploy a software package. For example, this might be required if you upgrade or modify the package.

To redeploy a package, follow these steps:

  1. Start the Active Directory Users and Computers console. To do this, in the Windows Start menu, select Administrative Tools, and then click Active Directory Users and Computers.

  2. In the console tree, right-click the domain node and then click Properties.

  3. Click the Group Policy tab, click the Group Policy object that you used to deploy the package, and then click Edit.

  4. Expand the Software Settings container that contains the software installation item that you used to deploy the package.

  5. Click the software installation container that contains the package.

  6. In the right pane of the Group Policy Object Editor, right-click the program, select All Tasks, and then click Redeploy application.

    You will see the following message:

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

  7. Click Yes.

  8. Close the Group Policy Object Editor console, click OK, and then close the Active Directory Users and Computers console.

Removing a Package

To remove a published or assigned package:

  1. Start the Active Directory Users and Computers console. To do this, in the Windows Start menu, click Administrative Tools, and then click Active Directory Users and Computers.

  2. In the console tree, right-click the domain name, and then click Properties.

  3. Click the Group Policy tab, click the Group Policy object that you used to deploy the package, and then click Edit.

  4. Expand the Software Settings container that contains the software installation item that you used to deploy the package.

  5. Click the software installation container that contains the package.

  6. In the right pane of the Group Policy Object Editor, right-click the program, select All Tasks, and then click Remove.

  7. Do one of the following:

    • Click Immediately uninstall the software from users and computers, and then click OK.

    • Click Allow users to continue to use the software, but prevent new installations, and then click OK.

  8. Close the Group Policy Object Editor console, click OK, and then close the Active Directory Users and Computers console.

Specifying Watson Settings

You can configure how Watson for the .NET Framework 3.0 behaves on individual computers by editing the following registry subkey:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\PCHealth\ErrorReporting\DW\VSSetup\.NET Framework 3.0\3.0.50727

Set the key to these values:

VSSWSectionEnabled=dword:00000001 
VSSWUXEnabled=dword:00000001 

Known Installation Issues

For information on known installation issues, see the Microsoft .NET Framework 3.0 Release Notes.

Troubleshooting

Microsoft .NET Framework 3.0 Log File Locations

The following log files are generated during the .NET Framework 3.0 setup:

  • dd_dotnetfx3error.txt

  • dd_dotnetfx3install.txt

  • dd_wcf_retMSInnnn.txt

  • dd_rgb_retMSInnnn.txt

  • dd_Wf_3.0_x86.msinnnn.txt

  • dd_wpf_retMSInnnn.txt

where nnnn is a randomly-generated suffix.

For non-English installations, the following log files are also generated:

  • dotnetfx3lperror30.txt

  • dotnetfx3lpinstall30.txt

During the .NET Framework 3.0 setup, the log files are located in the %temp% directory.

For Active Directory deployment, specify the /lv logfile option as noted in the Deploying a Component using Active Directory section to create the log file for each component deployment.

Windows Installer Error Codes

For a list of error codes, see the Windows Installer Error Codes page on the MSDN Web site.

Appendix

Below is a sample script that you can use to create the administrator install point.

set WORKFOLDER=c:\deploy
set dotNetFX3build=%WORKFOLDER%\dotnetfx3.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 NETFX3 redist SFX
call dotnetfx3.exe /q /x:%WORKFOLDER%\ext

REM ------------------------------------------------------------
REM create the .NetFX admin install point

md %WORKFOLDER%\AIP\dotnetfx_x86
call %WORKFOLDER%\ext\wcu\dotNetFramework\dotnetfx.exe /q /c:"msiexec /qb /a netfx.msi USING_EXUIH=1 REBOOT=ReallySuppress /l* %WORKFOLDER%\logs\netfx20_x86.log TARGETDIR=%WORKFOLDER%\AIP\dotnetfx_x86"

REM ------------------------------------------------------------
REM create the Windows Communication Foundation admin install point

md %WORKFOLDER%\AIP\WCF_x86
call %WORKFOLDER%\ext\wcu\WCF\wcf.exe /q /c:"msiexec /qb /a wcf.msi REBOOT=ReallySuppress /l* %WORKFOLDER%\logs\WCF_x86.log TARGETDIR=%WORKFOLDER%\AIP\WCF_x86"

REM ------------------------------------------------------------
REM create the MSXML6 admin install point

md %WORKFOLDER%\AIP\MSXML6_x86
call msiexec /a %WORKFOLDER%\ext\wcu\MSXML\msxml6.msi /qb /l* %WORKFOLDER%\logs\MSXML6_x86.log Targetdir=%WORKFOLDER%\AIP\MSXML6_x86

REM ------------------------------------------------------------
REM create the dotNetFX3 admin install point
md %WORKFOLDER%\AIP\NETFX3
call msiexec /a %WORKFOLDER%\VS_Setup.msi NOVSUI=1 /qb /l* %WORKFOLDER%\logs\NETFX3_x86.log Targetdir=%WORKFOLDER%\AIP\NETFX3

REM ------------------------------------------------------------
REM create the Windows Presentation Foundation admin install point

md %WORKFOLDER%\AIP\WPF_x86
call msiexec /a %WORKFOLDER%\ext\wcu\WPF\wpf.msi /qb /l* %WORKFOLDER%\logs\WPF_x86.log STANDALONE=no REBOOT=ReallySuppress Targetdir=%WORKFOLDER%\AIP\WPF_x86

REM ------------------------------------------------------------
REM create the Windows Workflow Foundation admin install point

md %WORKFOLDER%\AIP\Wf_x86
call msiexec /a %WORKFOLDER%\ext\wcu\WF\Wf_3.0_x86.msi /qb /l* %WORKFOLDER%\logs\Wf_x86.log ARPSYSTEMCOMPONENT=1 REBOOT=ReallySuppress Targetdir=%WORKFOLDER%\AIP\Wf_x86

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