Windows installer, bootstrap, .NET

bwells

Regular
Joined
Feb 25, 2003
Messages
84
I am using .NET to build a distribution of my software. I am also using the bootstrap setup.exe that allows the installation to check to see if the target machine has the .net runtime installed and if not, it installs it.

I have two problems with what I am doing.

1) Eventhough my system has the .NET runtime installed, I still get a popup asking me for the location to unpack the .net runtime files into. I supply a path, and then it goes on and does NOT install the runtime. It just asked for the path to unpack the exe.

2) On a machine with an out-of-date windows installer software, I got the following error:

"This installation package cannot be installed by the Windows Installer service. You must install a Windows service pack that contains a newer version of the Windows Installer service."


From my reading, the bootstrap is supposed to include the windows installer and install it if necessary. But in my reading, I did not find anything about upgrading an out-of-date windows installer software.

Has any had any experience with this stuff? Is there a way I can use the installation tools in .NET to build a distribution for my software that will install the .NET runtime if necessary, and will also install/upgrade the windows installer software if necessary?

I see when I select on the installation properties to build a windows installer, I get the files:


InstMsiA.Exe
InstMsiW.Exe

Which I understand are the windows installers. But according to the directions for using the bootstrap program, I dont need these because the bootstrap program includes them.

Any ideas?

thanks
Bryan
 
Yes, I am using the bootstrapper downloaded from MSDN for distribution of the runtime in order to have the runtime automatically installed when a user installs my .NET software. Then I ran into the problem of my customer having an out-of-date windows installer and that is where the problems started. So now I need the runtime installed if it is not already, and I need the windows installer updated/installed if it is either missing or out of date.
 
With your first problem I can see this being a possible problem with the path to your dotnetfx.exe file in the settings.ini.

Secondly the bootstrapper which we both use does not include the msi update files - you could add them to your distribution manually and advise clients if they are having a problem to use the update files. Try including them in the root installation folder (the same as the msi file) and see if that helps.

If the above doesn't work then if anyone has any ideas let us know - i'd like to know what happens myself!
 
My first problem is not from the settings.ini file. According to the instructions, I dont need to specify the location to the dotnetfx.exe if it is co-located with my setup.exe (which it is). The pop-up dialog I get says "please type the location where you want to place the extracted files". So it is as if I ran dotnexfx.exe directly and it wants to unpack the executable, before it even checks to see if it needs to install the dotnetfx.

The second problem does not agree with the microsoft knowldge base article:

http://support.microsoft.com/default.aspx?scid=kb;en-us;307364

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetdep/html/vsredistdeploy.asp


This says to select the properties for the installer in vs.net and set the bootstrapper to NONE because the one I downloaded from the microsoft website includes the windows installer. But clearly, it does not.

Bryan
 
Last edited:
I have found another issue with the .NET installation. I did not realize it, but apparently the .NET runtime requires IE 5 or greater to be installed. So if you do not have IE5+ installed, the dotnetfx.exe will pop up a warning and abort.
 
I figured out the first problem I had reported. It was because I had failed to unpack the dotnetfx.exe file before I distributed it. So if you run dotnetfx.exe, it create another dotnetfx.exe whiich is then what is actually run by the microsoft bootstrapper program and is the file you want to re-distribute. I had inadvertently redistributed the initial dotnetfx.exe but when I unpack it and redistribute the unpacked file, my first error goes away.

So the only other issue is how can I modify the installation so it will check for and install if necessary the dot net runtime, the microsoft installer and IE 5+. I guess I am going to be forced to use InstallShield to get this right for all users. I know I can simply redistribute all the separate packages and ask my users to be sure they have the proper software installed.
 
I believe .NET requires IE 5.01. I deployed an application to a computer that just had IE 5 on it and experienced occasional crashes.
 
Back
Top