|
|
Is it possible to easily setup a launch condition that checks if another product is installed on the system? I am trying to create an installation that adds some additional files to a folder based on if another application is installed on the system.
I have the productcode for the existing application and needs to setup a launch condition for my new installation. I first thought that I could create a custom action dll and search for the application there but it seems like I'm doing it the wrong way. I guess that this is kind of common to check for other products, and that it would be much easier to use launch conditions instead.
I also have the component GUID to the EXE file for the main application.
Is it possible to fill a property with the complete path to a file in another installation using the component GUID?
/Magnus
|
|
On Oct 30, 11:08 am, Magnus Flysjö <mag...[ at ]flysjo.com> wrote:
[Quoted Text] > Is it possible to easily setup a launch condition that checks if another > product is installed on the system? > I am trying to create an installation that adds some additional files to a > folder based on if another application is installed on the system. > > I have the productcode for the existing application and needs to setup a > launch condition for my new installation. > I first thought that I could create a custom action dll and search for the > application there but it seems like I'm doing it the wrong way. > I guess that this is kind of common to check for other products, and that it > would be much easier to use launch conditions instead. > > I also have the component GUID to the EXE file for the main application. > > Is it possible to fill a property with the complete path to a file in > another installation using the component GUID? > > /Magnus
If you know the other product's upgradecode and version, you can use an UpgradePath entry to locate the other product. Use the "detect only" attribute in the upgradepath. If found during setup, msi will set a property be set which you can use in your Launch Condition to stop setup.
Best regards, Sebastian Brand
Instyler Software - http://www.instyler.com
|
|
It's common to use the Upgrade table to search for products by UpgradeCode, or use AppSearch to look for a component guid from a product. Using the result in a launch condition isn't very friendly because this will prevent your app from installing. Maybe that's your intent, but forcing an installation order arbitrarily isn't friendly. If you're a plug-in that needs the hosting app, fine, but I've seen situations where product A said no, you must install B first, then B has a bunch of prerequisites, then finally A said no, I don't support prerequsisite X that B required (it was an SP). If there's no need to enforce an insatall order, then don't.
-- Phil Wilson Definitive Guide to Windows Installer http://www.apress.com/book/view/1590592972
"Magnus Flysjö" <magnus[ at ]flysjo.com> wrote in message news:u2pFmdnOJHA.1164[ at ]TK2MSFTNGP02.phx.gbl...
[Quoted Text] > Is it possible to easily setup a launch condition that checks if another > product is installed on the system? > I am trying to create an installation that adds some additional files to a > folder based on if another application is installed on the system. > > I have the productcode for the existing application and needs to setup a > launch condition for my new installation. > I first thought that I could create a custom action dll and search for the > application there but it seems like I'm doing it the wrong way. > I guess that this is kind of common to check for other products, and that > it would be much easier to use launch conditions instead. > > I also have the component GUID to the EXE file for the main application. > > Is it possible to fill a property with the complete path to a file in > another installation using the component GUID? > > /Magnus
|
|
|
[Quoted Text] > It's common to use the Upgrade table to search for products by > UpgradeCode, or use AppSearch to look for a component guid from a product. > Using the result in a launch condition isn't very friendly because this > will prevent your app from installing. Maybe that's your intent, but > forcing an installation order arbitrarily isn't friendly. If you're a > plug-in that needs the hosting app, fine, but I've seen situations where > product A said no, you must install B first, then B has a bunch of > prerequisites, then finally A said no, I don't support prerequsisite X > that B required (it was an SP). If there's no need to enforce an insatall > order, then don't.
Well, It's a plug-in installation I am trying to create, not an upgrade. And the only thing it will install is some files (non-executable) into a directory. I have the GUID for the component that installs the host applications EXE file, can I use that in some easy way to first do an AppSearch and then setup a Launch condition based on that?
/Magnus
|
|
Details depend on the tool, but you can do an AppSearch for a component guid. http://msdn.microsoft.com/en-us/library/aa368001(VS.85).aspx used with the AppSearch table. That'll set a property if the component is installed, and you can use that property in the LaunchConditions.
-- Phil Wilson Definitive Guide to Windows Installer http://www.apress.com/book/view/1590592972
"Magnus Flysjö" <magnus[ at ]flysjo.com> wrote in message news:eatWtGtOJHA.1368[ at ]TK2MSFTNGP06.phx.gbl...
[Quoted Text] >> It's common to use the Upgrade table to search for products by >> UpgradeCode, or use AppSearch to look for a component guid from a >> product. Using the result in a launch condition isn't very friendly >> because this will prevent your app from installing. Maybe that's your >> intent, but forcing an installation order arbitrarily isn't friendly. If >> you're a plug-in that needs the hosting app, fine, but I've seen >> situations where product A said no, you must install B first, then B has >> a bunch of prerequisites, then finally A said no, I don't support >> prerequsisite X that B required (it was an SP). If there's no need to >> enforce an insatall order, then don't. > > Well, It's a plug-in installation I am trying to create, not an upgrade. > And the only thing it will install is some files (non-executable) into a > directory. > I have the GUID for the component that installs the host applications EXE > file, can I use that in some easy way to first do an AppSearch and then > setup a Launch condition based on that? > > /Magnus >
|
|
|