Aaron Stebner's WebLog

Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio

Creating an administrative install point for the .NET Framework 2.0 SP1

Creating an administrative install point for the .NET Framework 2.0 SP1

  • Comments 30

A while back, I posted some instructions that can be used to create an administrative install point for the .NET Framework 2.0.  The .NET Framework 2.0 SP1 was recently released (it is required in order to install the .NET Framework 3.5).  There are some behind the scenes architecture changes in the .NET Framework 2.0 SP1 setup (which I'm planning to describe in more detail in a future blog post).  Those changes cause the previous instructions I posted for creating an administrative install point to no longer work.

Here are some updated steps that can be used to create an administrative install point for the .NET Framework 2.0 SP1 for each of the supported processor architectures.

To create an administrative install point for the .NET Framework 2.0 SP1 x86:

  1. Download the full package from http://www.microsoft.com/downloads/details.aspx?FamilyId=79BC3B77-E02C-4AD3-AACF-A7633F706BA5 and save it to your local hard drive
  2. Extract the contents of the setup package by running this command:

    netfx20sp1_x86.exe /x:c:\netfx20sp1\x86
  3. Stage the base MSI by running this command:

    msiexec /a "c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\netfx20a_x86.msi" TARGETDIR="c:\netfx20sp1\x86\AIP"
  4. Apply the patches to the staged base MSI by running this command:

    msiexec /a "c:\netfx20sp1\x86\AIP\netfx20a_x86.msi" PATCH="c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\ASPNET.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\CLR.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\CRT.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\NetFX_CA.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\NetFX_Core.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\NetFX_Other.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\PreXP.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\WinForms.msp;c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\DW.msp"

With these steps, you will have an administrative install point for the .NET Framework 2.0 SP1 x86 located at c:\netfx20sp1\x86\AIP.  You can then install the MSI directly using a command line like the following:

msiexec.exe /i c:\netfx20sp1\x86\AIP\netfx20a_x86.msi /l*v %temp%\netfx20sp1x86log.txt /qb VSEXTUI=1

You can adjust the parameters as needed if you want a fully silent install instead of basic UI, or want to use any other standard Windows Installer command line parameters.

To create an administrative install point for the .NET Framework 2.0 SP1 x64:

  1. Download the full package from http://www.microsoft.com/downloads/details.aspx?FamilyId=029196ED-04EB-471E-8A99-3C61D19A4C5A and save it to your local hard drive
  2. Extract the contents of the setup package by running this command:

    netfx20sp1_x64.exe /x:c:\netfx20sp1\x64
  3. Stage the base MSI by running this command:

    msiexec /a "c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\netfx20a_x64.msi" TARGETDIR="c:\netfx20sp1\x64\AIP"
  4. Apply the patches to the staged base MSI by running this command:

    msiexec /a "c:\netfx20sp1\x64\AIP\netfx20a_x64.msi" PATCH="c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\ASPNET_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\CLR_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\CRT_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\DW_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\NetFX_Core_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\NetFX_Other_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\WinForms_64.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\ASPNET.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\CLR.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\CRT.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\NetFX_CA.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\NetFX_Core.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\NetFX_Other.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\PreXP.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\WinForms.msp;c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\DW.msp"

With these steps, you will have an administrative install point for the .NET Framework 2.0 SP1 x64 located at c:\netfx20sp1\x64\AIP.  You can then install the MSI directly using a command line like the following:

msiexec.exe /i c:\netfx20sp1\x64\AIP\netfx20a_x64.msi /l*v %temp%\netfx20sp1x64log.txt /qb VSEXTUI=1

You can adjust the parameters as needed if you want a fully silent install instead of basic UI, or want to use any other standard Windows Installer command line parameters.

To create an administrative install point for the .NET Framework 2.0 SP1 ia64:

  1. Download the full package from http://www.microsoft.com/downloads/details.aspx?FamilyId=32E77AE0-96EF-4ECD-A157-9BF61A7C8DAA and save it to your local hard drive
  2. Extract the contents of the package by running this command:

    netfx20sp1_ia64.exe /x:c:\netfx20sp1\ia64
  3. Stage the base MSI by running this command:

    msiexec /a "c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\netfx20a_ia64.msi" TARGETDIR="c:\netfx20sp1\ia64\AIP"
  4. Apply the patches to the staged base MSI by running this command:

    msiexec /a "c:\netfx20sp1\ia64\AIP\netfx20a_ia64.msi" PATCH="c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\ASPNET_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\CLR_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\CRT_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\DW_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\NetFX_Core_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\NetFX_Other_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\WinForms_i64.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\ASPNET.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\CLR.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\CRT.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\NetFX_CA.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\NetFX_Core.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\NetFX_Other.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\PreXP.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\WinForms.msp;c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\DW.msp"

With these steps, you will have an administrative install point for the .NET Framework 2.0 SP1 ia64 located at c:\netfx20sp1\ia64\AIP.  You can then install the MSI directly using a command line like the following:

msiexec.exe /i c:\netfx20sp1\ia64\AIP\netfx20a_ia64.msi /l*v %temp%\netfx20sp1ia64log.txt /qb VSEXTUI=1

You can adjust the parameters as needed if you want a fully silent install instead of basic UI, or want to use any other standard Windows Installer command line parameters.

<update date="1/23/2008"> Added example command lines to install the MSI directly after creating the administrative install point. </update>

 

  • Hi Dlpirl - The VSEXTUI=1 parameter should bypass this custom action that blocked you in this scenario.  Are you sure you passed that in when you tried to deploy your 2.0 SP1 MSI using msiexec.exe?

    You should not need to go into the MSI and manually remove custom actions to make this work, and I do not recommend modifying the MSIs that have been shipped by Microsoft in this way.

  • Ah! I was putting a '/' in front of the VSEXTUI=1 parameter, and it doesn't want one.  It runs fine as you say.

  • and... it works fine deployed via Active Directory software installation GPO. As know, only MSI can be used for AD installs, but it is not possible to use any switches.  Yet NET Framework 2.0 SP1 appears to have installed fine on my W2K test workstation.  

    Thanks for the great work!

  • Hi Dlpirl - I'm glad that you were able to get this working.  Let me know if you run into any additional issues in the future.

  • PingBack from http://www.edugeek.net/forums/windows/22137-net-2-0-sp1-kb110806.html#post216891

  • A while back, I posted some instructions that can be used to create an administrative install point for

  • Unattended Installation for the .NET Framework 3.5

  • Unattended Installation for the .NET Framework 3.5

  • Nice guide, thanks

    I created a simple .bat file with:

    "msiexec.exe /i c:\netfx20sp1\ia64\AIP\netfx20a_ia64.msi /l*v %temp%\netfx20sp1ia64log.txt /qb VSEXTUI = 1"

    and locally it works. But if I try to execute .bat from GPO Startup script replacing local path with network path, it doesn't work.

    Why ?!

  • Hi Amuro - Do you have a verbose log file from the scenario where this is failing?  If so, can you please zip it, post it to a file server (such as http://skydrive.live.com) and reply back here and provide a link I can use to download it and take a further look?

  • Thanks for your reply

    Here log file : www.box.net/.../bsoxcedkar

  • Hi Amuro - Your log file shows a 1619 error.  That means that Windows Installer is unable to open the database (see msdn.microsoft.com/.../aa368542.aspx for more details about these error codes).

    The location it is trying to open the database from is \\vanadium\sc\Tools\Framework_2.0_SP1\netfx20a_x86.msi.  Does that file exist at that location, and do the machine you're deploying to and the user account that the deployment is happening for have access to that location?

  • The network location is correct. That I do not understand is that if I'm logged with the user and launch the installation from the network location

    "msiexec.exe /i \\vanadium\sc\Tools\Framework_2.0_SP1\netfx20a_x86.msi /l*v C:\netfx20sp1\netfx20sp1x86log.txt /qb VSEXTUI=1"

    everything is ok. but if I run the command from Policy (Computer Configuration, Policy, Windows Settings, Startup Script) gives me that error

  • Hi Amuro - I'm not sure what would cause that type of error.  Do you see similar behavior when you try to deploy other (non-.NET Framework) MSIs in the same way?

  • Many thanks Aaron, Excellent article, extremely useful information, it helped when repairing a corrupted DotNet installation,

Page 2 of 2 (30 items) 12
Leave a Comment
  • Please add 3 and 6 and type the answer here:
  • Post