InstallShield Tips and Techniques

November 23, 2009

Issue with .NET 2.0 SP1 Setup Prerequisite

Filed under: Reference Materials — shieldmaster @ 1:24 am

Recently a past customer came to me with a problem that his clients were encountering – the .NET 2.0 SP1 Setup Prerequisite was failing to install, and issuing a nasty message to his clients. 

Evaluation of the setup prerequisite showed that there were four conditions – one of which dealt with whether .NET 2.0 SP1 was currently installed.  Unfortunately the condition doesn’t care if there was a follow-on service pack (SP2) for .NET 2.0 or even if there were future follow-on versions of .NET came out, which is the problem you encountered.  This is surprising coming from Microsoft!

Since we needed to get the Setup Prerequisite working, I decided to modify the condition to look for other installed .NET versions – if any were there then .NET 2.0 SP1 would not be slated for installation.  Bottom line, drop the first condition – the incorrect search for .NET 2.0 SP1, and replace with the following 3 conditions – Evaluate the registry for the Uninstall entry for the following versions of .NET:

  1. .NET 2.0 SP1 –  “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{B508B3F1-A24A-32C0-B310-85786919EF28}”
  2. .NET 3.0 SP1 – “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{2FC099BD-AC9B-33EB-809C-D332E1B27C40}”
  3. .NET 3.5 – “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{2BA00471-0328-3743-93BD-FA813353A783}”

 The reason for these three only, is that .NET 3.5 was issued as the first “Chained MSI” – meaning that under the cover of the bootstrap Setup.exe, the individual MSI’s are contained within the Executable.  The Setup will step thru launching first the .NET 2.0, then the .NET 2.0 SP1, then the .NET 3.0 SP1 and then the .NET 3.5.  So if you find .NET 3.5, then the future releases of .NET Framework will include the earlier ones.

Here are some snapshots of the editing I did on the Setup Prerequisite for the .NET Framework 2.0 SP1.


1 Comment »

  1. Thanks it’s verry interesting

    Comment by claudia — September 21, 2011 @ 8:05 am

RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at

%d bloggers like this: