Distributing .NET Framework with Install (All in one .exe file)

Is there a way to distribute the .NET framework (or at least a an .exe that will download it) and the installer created by Visual Studio all in one program?  

Zipping the setup.exe bootstrapper, .ini and msi files is too confusing for some people.  If there isn't an easy way to do this, what is a good solution for those so that people can download one .exe and everything installs?

I'm thinking I could just write a C++ app to check if .NET 1.1 is installed, go get it and install it if not, supressing the restart, go get my program and then install my program, and then restart.  

Are there any good websites that talk about this?
Who is Participating?
townsmaConnect With a Mentor Commented:
Because the installer files created by Visual Studio use the .Net Framework, you are quite right that the framework must be installed first.  There is a single file version of the framework that can be distributed, this can be downloaded from the Microsoft Website.

Once you have this you could create a simple batch file that checks for the exisitance of the Framework, and if not installed, install it. Then run your application installer.  But this would be pretty messy, again requiring you to distribute three files, or a zipped version of these files.

A better solution is to do what I do, which is buy a copy of Installshield, this has it's own runtime program, that can install the Framework and you application from a single file.  You can also use it to customise you installation process, as well as installing, any dependencies or runtimes, like Crystal Reports etc.

Hope this helps, good luck.
jjacksnAuthor Commented:
Took your advice, went and downloaded it.  Now, I can't figure out how to

1.  Exclude files that it is automatically includeing when I bulid the install.

2.  Install the .NET Framework with the installer.

Could you assist me?
Sorry, can you confirm what you downloaded, the .Net Framework, of the Installshield?
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

jjacksnAuthor Commented:
I found the solution to both of those questions.  However, I am having the following problem

In the installShield program, I select to download the framework from a website.  (our company website).  During the install, when the dotnetfx.exe file is downloaded, the windows installer starts, and asks if you want to install .NET 1.1.  Upon clicking yes, the installer almost immediatley returns to the installer for my .NET application, which then installs.  However, the .NET framework never gets installed.  Have you ever had this problem?  I am not specifying any command line arguemnts for the dotnetfx.exe file.
Sorry, haven't had this problem. I always include the framework in my build, and this has always installed ok.
jjacksnAuthor Commented:
townsma, no problem.

Do you deploy over the web?  that is our big problem, we don't want to have to force our users to download the extra 24 megs if they already have 1.1 installed.
Deploying over the web is something we will be moving into early next year.  When we get to this stage I will certainly pass on any tips we learn.

If the users are on a local network and If you use active directory, then you can create a group policy and add .Net framework (got to extract the exe to create an MSI file) and the application to the policy to be installed on the machines that you want to. Thats the way I distribute my windows apps.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.