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
- :
- Help! file ComponentID changes!!!
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 21, 2010
03:21 PM
Problem with Dynamic Linked Files /MSI Basic Project
Hi,
How does one ensure that files from a dynamic link, with the 'Best practices' options checked, keep the same GUID accross versions and updates?
I believe this is the problem with our current install kit: some GUIDs are not maintained for certain files.
This results in the minor upgrade breaking, and no files are actually updated, with the next startup of the program triggering an 'install/configure on demand' type popup. That popup does not seem to deploy any new files either...
We have over 500 files in that folder: please tell me I don't have to link them all individually!!!! This would be such a step backwards...
(Why is there no 'always overwrite' option for dynamic linked files?)
How does one ensure that files from a dynamic link, with the 'Best practices' options checked, keep the same GUID accross versions and updates?
I believe this is the problem with our current install kit: some GUIDs are not maintained for certain files.
This results in the minor upgrade breaking, and no files are actually updated, with the next startup of the program triggering an 'install/configure on demand' type popup. That popup does not seem to deploy any new files either...
We have over 500 files in that folder: please tell me I don't have to link them all individually!!!! This would be such a step backwards...
(Why is there no 'always overwrite' option for dynamic linked files?)
(6) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 22, 2010
05:57 AM
Hi,
As far as I know, to update a file in a dynamic component, you need to exclude it from the dynamic component and add a new component with this file in.
Someone may have another trick. BTW, you can add large amounts of files by dragging and dropping into a component, this way the file is not dynamically linked and has the 'always overwrite' option.
Thanks,
Vijay
As far as I know, to update a file in a dynamic component, you need to exclude it from the dynamic component and add a new component with this file in.
Someone may have another trick. BTW, you can add large amounts of files by dragging and dropping into a component, this way the file is not dynamically linked and has the 'always overwrite' option.
Thanks,
Vijay
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 22, 2010
11:32 AM
Try setting the "Previous Package" in your Release.
This means, of course, that for each build you need the prior build's output available to point to...
This means, of course, that for each build you need the prior build's output available to point to...
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 22, 2010
11:39 AM
InstallShield should be able to retain the GUIDs across versions if:
1. you have dynamic links
2. each of those links excludes subfolders, that is, every subfolder has its own component
3. You have the Patch Optimization option turned on in the build, and point to the previous package.
Since a component can only install to a single folder, if you include subfolders, InstallShield generates multiple components (with GUIDs) with multiple files (with individual GUIDs) and it is apparently unable to retain the GUIDs for the structure when you build a new version.
1. you have dynamic links
2. each of those links excludes subfolders, that is, every subfolder has its own component
3. You have the Patch Optimization option turned on in the build, and point to the previous package.
Since a component can only install to a single folder, if you include subfolders, InstallShield generates multiple components (with GUIDs) with multiple files (with individual GUIDs) and it is apparently unable to retain the GUIDs for the structure when you build a new version.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 23, 2010
10:26 AM
Thanks for the infos!
Setting the 'Previous Package' seems to be helping alot, and creating some new problems... (warning & errors at build)
Would the GUID of a component change if the case of the filename changed?
I've also changed the few dynamic links that were recursing into the subfolders so that each subfolder is a distinct component.
About the 'Patch Optimization option', where do I find that? I can't find it!
Using InstallShield 2010 Premier, with a Basic MSI project, with a setup.exe bootstrapper.
Setting the 'Previous Package' seems to be helping alot, and creating some new problems... (warning & errors at build)
Would the GUID of a component change if the case of the filename changed?
I've also changed the few dynamic links that were recursing into the subfolders so that each subfolder is a distinct component.
About the 'Patch Optimization option', where do I find that? I can't find it!
Using InstallShield 2010 Premier, with a Basic MSI project, with a setup.exe bootstrapper.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jun 23, 2010
01:24 PM
Wow. I'm baffled.
I just figured out why I still had 4 files whose GUID's were changing: the CASE of the FILENAME must be the SAME from one version to another... !!! :eek:
Other than UCasing or LCasing every file, is there a workaround for this?
For now, I just made sure the case is the exact same for each versions, but honestly, this is a bit ridiculous...
I just figured out why I still had 4 files whose GUID's were changing: the CASE of the FILENAME must be the SAME from one version to another... !!! :eek:
Other than UCasing or LCasing every file, is there a workaround for this?
For now, I just made sure the case is the exact same for each versions, but honestly, this is a bit ridiculous...
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 12, 2011
06:33 AM
Hello,
Our company is trying to migrate some setups to MSI projects and we are being faced with these exact problems.
Because this is the official flexera community forum, i'd like to know if it is possible to get a somewhat official response about what can and can't be done in MSI projects regarding this dynamic links issue in minor upgrades?
The migration from InstallScript to MSI is starting to look like a downgrade and a dangerous liability for our company, if things like the case of a DLL or a simple subfolder in dynamic links break a minor upgrade. This isn't something that can be explained to a paying customer easily...
We have a lot of dynamic links with sub-folders, mainly for "blind" distribution of folders and distribution of localized resources. Things that will change our work methods and increase wasted time handling the setups, if they need to be changed...
Thank you for your help.
Our company is trying to migrate some setups to MSI projects and we are being faced with these exact problems.
Because this is the official flexera community forum, i'd like to know if it is possible to get a somewhat official response about what can and can't be done in MSI projects regarding this dynamic links issue in minor upgrades?
The migration from InstallScript to MSI is starting to look like a downgrade and a dangerous liability for our company, if things like the case of a DLL or a simple subfolder in dynamic links break a minor upgrade. This isn't something that can be explained to a paying customer easily...
We have a lot of dynamic links with sub-folders, mainly for "blind" distribution of folders and distribution of localized resources. Things that will change our work methods and increase wasted time handling the setups, if they need to be changed...
Thank you for your help.