This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: How to use [ProductVersion] as part of the [INSTALLDIR]
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 17, 2013
05:37 PM
How to use [ProductVersion] as part of the [INSTALLDIR]
In Visual Studio 2010, I could use [ProductVersion] as part of the [TARGETDIR].
In Visual Studio 2012, I cannot get this to work - it always creates the folder with the literal '[ProductVersion]' for the folder name instead of the value of the ProductVersion property.
Is there any way to get this to work, or do I need to find a different product for building my installs?
In Visual Studio 2012, I cannot get this to work - it always creates the folder with the literal '[ProductVersion]' for the folder name instead of the value of the ProductVersion property.
Is there any way to get this to work, or do I need to find a different product for building my installs?
(5) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 17, 2013
07:11 PM
For those who need to do the same thing, here is the VBScript to do it.
NOTE that the file must be in ASCII encoding and NOT UTF-8!
Note: The reason for this is so we can install the new version of the app on our terminal server while others are still using the current version.
We have a custom 'app launcher' that executes the most recent version of the app.
NOTE that the file must be in ASCII encoding and NOT UTF-8!
Dim installdir
installdir = Session.Property("INSTALLDIR")
Dim version
version = Session.Property("ProductVersion")
Session.Property("INSTALLDIR") = installdir & version
Note: The reason for this is so we can install the new version of the app on our terminal server while others are still using the current version.
We have a custom 'app launcher' that executes the most recent version of the app.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 17, 2013
08:24 PM
Keep in mind that, by using ProductVersion in component destination and custom action to update component destination during installation, it will incur additional work to ensure proper upgrade and clean uninstallation (esp after upgrade).
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 18, 2013
10:07 AM
Care to elaborate on what 'extra work' is required and when?
Do you have a better way to do this?
In VS2010, I could just set the DefaultLocation property of the Application Folder to [ProgramFilesFolder][Manufacturer]\[ProductName]\[ProductVersion].
Why did Flexera chose to remove that capability in VS2012?
Do you have a better way to do this?
In VS2010, I could just set the DefaultLocation property of the Application Folder to [ProgramFilesFolder][Manufacturer]\[ProductName]\[ProductVersion].
Why did Flexera chose to remove that capability in VS2012?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 18, 2013
02:18 PM
Say ProductVersion changes from 1.0.0 to 1.0.1, the destination will change. With component GUID unchanged, components remain installed, files in components will go to a different folder. During uninstallation, it will somehow know what to remove. The "somehow" part is the additional work. I would not want to use ProductVersion as part of destination path, unless it is to support coexistence of multiple versions of the same product. To truly implement coexistence, a lot more will need to be changed, component GUIDs, binary CLSID/AppID/TypyLib etc.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 18, 2013
02:27 PM
As I said in the previous post, this IS to allow multiple versions of the product to be installed at the same time.
Why Oh Why did Flexera lobotomize this product?
In VS2010, when I changed the Product Version property, it would ask me if I wanted to also change the Product Code GUID.
Of course, like everything else that used to work in VS2010, this also does not work in VS2012.
Why Oh Why did Flexera lobotomize this product?
In VS2010, when I changed the Product Version property, it would ask me if I wanted to also change the Product Code GUID.
Of course, like everything else that used to work in VS2010, this also does not work in VS2012.
![](/skins/images/CC38E504FC9E1309DC48ACFEB4925670/responsive_peak/images/icon_anonymous_message.png)