Friday, July 17, 2009

InstallShield Setup Prerequisites for PIA 2003, PIA 2007, VSOT, .NET2.0

Now, if you are writing an "InstallShield X" package for something like an Excel Addin, you are dependent on a number of things:
  • .NET Framework (2.0, for example, dotnetfx2.0.exe)
  • Office 2007 Primary Interop Assemblies (o2007pia.msi)
  • Visual Studio Tools for Office (vstor2005.exe)
One way to do this is setting up a "Basic MSI Project" (NOTE: this doesn't work with a standard InstallShield project as pre-requisites are not supported there !!)
and add prerequisites (Tools->Prerequisite Editor) for each of these dependencies.
Now the crucial question is, which condition to set for each of these packages ?
Here's my best solution, so far (Conditions tab in Preqrequisites):
  • .NET Framework 2.0: "A File does or does not exist" [WindowsFolder]\Microsoft.NET\Framework\v2.0.50727\RegAsm.exe --- Run setup if: Not Found
  • PIA Office 2007: "A registry key does or does not exist" HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\Windows\CurrentVersion\Uninstall\{50120000-1105-0000-0000-0000000FF1CE} --- Run setup if: Not Found
  • PIA Office 2003: "A registry key does or does not exist" HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\Windows\CurrentVersion\Uninstall\{91490409-6000-11D3-8CFE-0150048383C9} --- Run setup if: Not Found
  • Visual Studio 2005 Office Tools: "A registry key does or does not exist" HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\Windows\CurrentVersion\Uninstall\{388E4B09-3E71-4649-8921-F44A3A2954A7} --- Run setup if: Not Found
Took me a long time to figure these out, thanks Anthony ! Would be nice if this helps someone :-)

1 comment:

  1. Hey definitely did help me out. Thanks a lot.

    ReplyDelete