/build/static/layout/Breadcrumb_cap_w.png

MST install location

Hi ,
I created an MST for a QPulse MSI so that I can install it via GPO and AD.
One of the changs I make is to install the app to D:\program Files\app name but when I roll out the MSI and MST via AD it installs it to C:\Program Files.
When I looked at this _BrowserProperty is set to INSTALLDIR but I cant find were I need to and the correct value to represent the D drive as all references seem to only reference Program Files\ not actually refering to the drive letter. I have created lots of these and they usual work fine but I am using th enew version of wise package studio. When I look at the database its beond the level I would usually be farniulare.
thanks
Ronnie

0 Comments   [ + ] Show comments

Answers (6)

Posted by: Jamie B 16 years ago
Orange Senior Belt
0
Lookup the ROOTDRIVE property in the SDK.
Posted by: AngelD 16 years ago
Red Belt
0
As "Jamie B" stated; you need to add the ROOTDRIVE property to the Property table and give it a value of "D:\" or modify it if already exist.
Posted by: MSIPackager 16 years ago
3rd Degree Black Belt
0
Using ROOTDRIVE won't work as Windows Installer uses the %ProgramFiles% environment variable to resolve the "Program Files" path.

This article explains in a little more detail: http://geekswithblogs.net/ajshurts/archive/2005/07/20/47784.aspx

You can either do what the article suggests - create a property and appropriate directory table entries to resolve INSTALLDIR back to D:\ or just create an INSTALLDIR property with a value of D:\Program Files\app name.

The second method (which I prefer by far) is generally easier but will create a validation error which you can safely igonore. Be aware they there maybe other references in your package which use [ProgramFiles] - e.g. the registry may contain a reference to [ProgramFiles]\Folder1\Folder2\File1.exe - you'll need to change this to [INSTALLDIR]\Folder2\File1.exe or [#File1.exe] to cover this eventuality.

ROOTDRIVE will work for a folder which isn't already defined as a shell folder - e.g. if your app writes files to C:\Data and you set ROOTDRIVE=D:\ then you will get D:\Data

Hope this makes sense. Would be interested to hear any other opinions on this...

Cheers,
Rob.
Posted by: AngelD 16 years ago
Red Belt
0
Good call Rob!
Posted by: jmcfadyen 16 years ago
5th Degree Black Belt
0
well almost a good call !

you should avoid doing things like this where you can .. (but I see where your heading Rob and its in the right direction)

[INSTALLDIR]\Folder2\File1.exe

It should be something like this.

[ACTUALFOLDER]file.exe

Installshield is very prone to creating entries like this [ProgramFiles]\Folder1\Folder2\File1.exe

Its very bad practice and should be avoided where possible.
Posted by: MSIPackager 16 years ago
3rd Degree Black Belt
0
Agreed, I was just pointing out the principal but thanks for the correction.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ