Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio
All postings are provided AS IS with no warranties, and confer no rights. Additionally, views expressed herein are my own and not those of my employer, Microsoft.
Back when the .NET Framework 3.5 beta 2 was released, I posted this item on my blog describing how to download the individual pieces of the .NET Framework 3.5 beta 2 in order to create an installable layout that can be used to create an installer that includes the .NET Framework 3.5 or for network deployment. If you have looked at those instructions, you'll notice how long, tedious and potentially error-prone they are.
Fortunately, as Bret Grinslade noted in this blog post, in the final release of the .NET Framework 3.5, a new package is available for download that includes all of the pieces of the .NET Framework 3.5 so that you no longer need to download the pieces individually in order to assemble an installable layout.
The combined installation package for the .NET Framework is available for download at http://download.microsoft.com/download/6/0/f/60fc5854-3cb8-4892-b6db-bd4f42510f28/dotnetfx35.exe.
After downloading this package, you can extract the contents by running dotnetfx35.exe /x and it will prompt you with a location to extract the contents to. From there, you can trim down the installer payload if appropriate in your deployment scenario in the following ways:
Now you can run dotnetfx35setup.exe from the extracted folder to start installing the .NET Framework 3.5.
One important note - if you decide to optimize your installer payload using any of the suggestions above, and it turns out that you over-optimized and setup really does need one of the packages that you deleted from the extracted folder, then .NET Framework 3.5 setup will attempt to automatically download the package for you if you have a live Internet connection during setup. If it needs to download a package and the system does not have a live Internet connection, then .NET Framework 3.5 setup will fail to install.
Hello Aaaron,
that is nice to know.
But what I am missing is a complete download for .NET 3.0 SP1.
We are using .NET 3.0 on XPE (Embedded Systems without Internet connection ) In order to service those systems a download file is needed.
Do you if this is planned ?
One thing I would like to suggest to MS is to keep IA64 out of these installers. x64 is much much more common and even home users today have an x64 processor. But IA64 is a special rare architecture that is much much less in use. Why increase size, bloat and footprint by bundling IA64 everywhere? Even for Visual Studio 2005 and 2008, I noticed that although I'd unselected the IA64 files in setup, it installed the IA64 debug symbols and some more IA64 components (Crystal reports IA64 setup etc) which I'll never ever touch.
Hi Martin - I'm not sure if this is planned or not. In the meantime, you can extract the 3.0 SP1 bits out of the 3.5 package. I will also create a blog post soon that describes how to assemble a 3.0 SP1 package using the standalone web download bootstrapper located at http://www.microsoft.com/downloads/details.aspx?FamilyId=EC2CA85D-B255-4425-9E65-1E88A0BDB72A.
Hi Someone - This combined installer for the .NET Framework 3.5 was not designed to optimize for size. The web download bootstrapper located at http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-508D977D32A6 will install only the components needed on the system it is run on.
The .NET Framework 3.5 is packaged as a core package that includes language-neutral binaries and English
PingBack from http://msdnrss.thecoderblogs.com/2007/12/07/possible-net-framework-35-installation-warnings-on-non-english-operating-systems/
Yes but that web download bootstrapper isn't exactly helpful for deployment purposes when you don't have always on internet connections.
Hi Someone - Yes, that is correct. The web download bootstrapper may require Internet connectivity. If you are looking to minimize the size of the .NET Framework 3.5 setup package and also not require Internet connectivity, then you can use some of the suggestions that I listed above in the main text of this blog post (such as not carrying the ia64/x64 payload, not carrying Windows Vista payload, not carrying downlevel OS payload, etc)
A couple of weeks ago, I posted some notes about creating an installable layout for the .NET Framework
PingBack from http://msdnrss.thecoderblogs.com/2007/12/15/how-to-create-an-installable-layout-for-the-net-framework-30-sp1/
Question: When the .NET Framework 3.0 shipped, 3 packages were made available for download - a 2.8 megabyte
PingBack from http://msdnrss.thecoderblogs.com/2008/01/11/