Creating an administrative install point for the .NET Framework 2.0 SP1
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:
Download the full package from https://www.microsoft.com/downloads/details.aspx?FamilyId=79BC3B77-E02C-4AD3-AACF-A7633F706BA5 and save it to your local hard drive
Extract the contents of the setup package by running this command:
netfx20sp1_x86.exe /x:c:\netfx20sp1\x86
Stage the base MSI by running this command:
msiexec /a "c:\netfx20sp1\x86\wcu\dotnetframework\dotnetfx20\netfx20a_x86.msi" TARGETDIR="c:\netfx20sp1\x86\AIP"
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:
Download the full package from https://www.microsoft.com/downloads/details.aspx?FamilyId=029196ED-04EB-471E-8A99-3C61D19A4C5A and save it to your local hard drive
Extract the contents of the setup package by running this command:
netfx20sp1_x64.exe /x:c:\netfx20sp1\x64
Stage the base MSI by running this command:
msiexec /a "c:\netfx20sp1\x64\wcu\dotnetframework\dotnetfx20\netfx20a_x64.msi" TARGETDIR="c:\netfx20sp1\x64\AIP"
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:
Download the full package from https://www.microsoft.com/downloads/details.aspx?FamilyId=32E77AE0-96EF-4ECD-A157-9BF61A7C8DAA and save it to your local hard drive
Extract the contents of the package by running this command:
netfx20sp1_ia64.exe /x:c:\netfx20sp1\ia64
Stage the base MSI by running this command:
msiexec /a "c:\netfx20sp1\ia64\wcu\dotnetframework\dotnetfx20\netfx20a_ia64.msi" TARGETDIR="c:\netfx20sp1\ia64\AIP"
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>
Comments
Anonymous
December 16, 2007
PingBack from http://geeklectures.info/2007/12/16/creating-an-administrative-install-point-for-the-net-framework-20-sp1/Anonymous
December 20, 2007
I recently posted a set of instructions for creating an administrative install point for the .NET FrameworkAnonymous
December 20, 2007
I recently posted a set of instructions for creating an administrative install point for the .NET FrameworkAnonymous
December 20, 2007
PingBack from http://msdnrss.thecoderblogs.com/2007/12/20/creating-an-administrative-install-point-for-the-net-framework-30-sp1/Anonymous
January 21, 2008
.NET Framework 2.0 SP1 appears to be a full version with sp1 slipstreamed. Can go skip 2.0 install and go straight to install 2.0 Sp1 instead?Anonymous
January 21, 2008
Hi TerryCheng - You're correct, the .NET Framework 2.0 SP1 is a slipstream release that includes the original .NET Framework 2.0 functionality and the patched binaries that are a part of SP1. The 2.0 SP1 package will correctly install on a system that does not yet have the .NET Framework 2.0, and it will automatically upgrade the .NET Framework 2.0 to SP1 if it is already on the system. If you're interested, I posted a bit more about the behind the scenes details of 2.0 SP1 setup at http://blogs.msdn.com/astebner/archive/2008/01/17/7145670.aspx.Anonymous
January 21, 2008
PingBack from http://blogs.msdn.com/astebner/archive/2008/01/17/7145670.aspxAnonymous
January 25, 2008
The official deployment guides for system administrators and application developers have been postedAnonymous
January 25, 2008
The official deployment guides for system administrators and application developers have been postedAnonymous
February 12, 2008
The comment has been removedAnonymous
February 19, 2008
Since the .NET Framework 2.0 SP1 and 3.0 SP1 shipped (as prerequisites for the .NET Framework 3.5 andAnonymous
February 19, 2008
Since the .NET Framework 2.0 SP1 and 3.0 SP1 shipped (as prerequisites for the .NET Framework 3.5 andAnonymous
February 19, 2008
PingBack from http://msdnrss.thecoderblogs.com/2008/02/19/how-to-perform-a-silent-repair-and-uninstall-of-the-net-framework-20-sp1-and-30-sp1/Anonymous
April 23, 2008
Following the procedure 'To create an administrative install point for the .NET Framework 2.0 SP1 x86:' I found that the administrative install MSI would not run with the switches given, or any switches for that matter. I got the message that I had to run setup.exe. The only way I found around this was to edit the MSI using Wise Windows Installer Editor and remove the Custom Action "BlockDirectInstall". Then it worked fine and I should be able to deploy via Active Directory Software installation which is my goal.Anonymous
April 23, 2008
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.Anonymous
April 23, 2008
Ah! I was putting a '/' in front of the VSEXTUI=1 parameter, and it doesn't want one. It runs fine as you say.Anonymous
April 23, 2008
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!Anonymous
April 23, 2008
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.Anonymous
July 17, 2008
PingBack from http://www.edugeek.net/forums/windows/22137-net-2-0-sp1-kb110806.html#post216891Anonymous
February 10, 2009
A while back, I posted some instructions that can be used to create an administrative install point forAnonymous
February 20, 2009
Unattended Installation for the .NET Framework 3.5Anonymous
February 21, 2009
Unattended Installation for the .NET Framework 3.5Anonymous
February 22, 2011
The comment has been removedAnonymous
February 22, 2011
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?Anonymous
February 22, 2011
The comment has been removedAnonymous
February 23, 2011
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 \vanadiumscToolsFramework_2.0_SP1netfx20a_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?Anonymous
February 23, 2011
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 \vanadiumscToolsFramework_2.0_SP1netfx20a_x86.msi /l*v C:netfx20sp1netfx20sp1x86log.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 errorAnonymous
February 23, 2011
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?Anonymous
August 18, 2011
Many thanks Aaron, Excellent article, extremely useful information, it helped when repairing a corrupted DotNet installation,