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: Question about Minor upgrade using Dynamic File Linking
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
‎Dec 13, 2010
05:14 AM
Question about Minor upgrade using Dynamic File Linking
Dear forum member,
Thanks in advance to those who may know the answer to my question.
I have a question about minor upgrade using Dynamic file Linking.
I have an InstallScript MSI project using Dynamic file Linking to add my files/folders,
with one folder having multiple sub-folders and sub-sub-folders.
The file structure will look like this after installation:
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1
Dynamic file Linking only points to the folderA layer and not deeper.
When making changes to the files, I discovered that if I either only
1. ADD a sub-folder under folder A
E.G.
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1
Program Files\folderA\folder3\folder3-1 --> added in new setup project
or
2. REMOVE a sub-folder under folder A
E.G.
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1 --> removed in new setup project
then build a new version of setup.exe to minor upgrade the older installation, it will upgrade fine.
Please take note that I only make ONE kind of file change(eithe add OR remove, not both) at a time, and the minor upgrade will be ok.
BUT if I make BOTH kinds of file changes(add AND remove) at a time like the following:
E.G.
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1 --> remove in new setup project
Program Files\folderA\folder3\folder3-1 --> added in new setup project
then build a new version of setup.exe to minor upgrade the older installation, it will not minor upgrade and will skip the copy files process and jump to the finish screen.
Also, after the minor upgrade, Windows Installer seems to be messed up and can't uninstall my program anymore, when I try to uninstall it using Control Panel's Add/Remove Programs.
My question is,
1. Why does Installshield remember the old setup.exe's file structure, even when Dynamic File Linking was only assigned to the PARENT folder of the folder being added/removed ?
2. Why does BOTH adding/removing folders when building a new setup.exe result in minor upgrade failure ? Is this a limitation of the Minor upgrade or Dynamic File Linking ?
Thank you for your help.
Thanks in advance to those who may know the answer to my question.
I have a question about minor upgrade using Dynamic file Linking.
I have an InstallScript MSI project using Dynamic file Linking to add my files/folders,
with one folder having multiple sub-folders and sub-sub-folders.
The file structure will look like this after installation:
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1
Dynamic file Linking only points to the folderA layer and not deeper.
When making changes to the files, I discovered that if I either only
1. ADD a sub-folder under folder A
E.G.
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1
Program Files\folderA\folder3\folder3-1 --> added in new setup project
or
2. REMOVE a sub-folder under folder A
E.G.
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1 --> removed in new setup project
then build a new version of setup.exe to minor upgrade the older installation, it will upgrade fine.
Please take note that I only make ONE kind of file change(eithe add OR remove, not both) at a time, and the minor upgrade will be ok.
BUT if I make BOTH kinds of file changes(add AND remove) at a time like the following:
E.G.
Program Files\main.exe
Program Files\folderA\folder1\folder1-1
Program Files\folderA\folder2\folder2-1 --> remove in new setup project
Program Files\folderA\folder3\folder3-1 --> added in new setup project
then build a new version of setup.exe to minor upgrade the older installation, it will not minor upgrade and will skip the copy files process and jump to the finish screen.
Also, after the minor upgrade, Windows Installer seems to be messed up and can't uninstall my program anymore, when I try to uninstall it using Control Panel's Add/Remove Programs.
My question is,
1. Why does Installshield remember the old setup.exe's file structure, even when Dynamic File Linking was only assigned to the PARENT folder of the folder being added/removed ?
2. Why does BOTH adding/removing folders when building a new setup.exe result in minor upgrade failure ? Is this a limitation of the Minor upgrade or Dynamic File Linking ?
Thank you for your help.
(5) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 16, 2010
01:27 AM
How are the folders\sub folders are grouped into the components? Is it in a same component or a different component? Also, you can use the Direct Editor view of the Dynamic File linking for seeing whether there are any older references of the directories ...
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 17, 2010
12:10 AM
Hi GetExp,
Below are the details to your question.
1.The folders\sub folders are grouped into a single component
2.I checked on the ISDynamicFile table using Direct Editor view, and made sure there was no older references of the directories.
Below are the details to your question.
1.The folders\sub folders are grouped into a single component
2.I checked on the ISDynamicFile table using Direct Editor view, and made sure there was no older references of the directories.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 17, 2010
08:34 AM
You might want to search these forums and the IS HelpNet for information about using dynamic linking. In general, though, the way IS handles dynamic linking (in MSIs) is to create a component for each folder or subfolder, since the Windows Installer can install a component's contents only to one folder. IS then generates a GUID for each of those components.
I don't know the reason, exactly, but IS doesn't seem to be able to synch GUIDs for components for minor upgrades when the dynamic link is more than one folder "deep".
From what I have seen in these forums (and in my experience) you will have issues with minor updates if you have dynamic links that include subfolders. You would be better off either creating a component for each subfolder, or using major upgrades (uninstall, then reinstall) if you use dynamic links with subfolders.
I don't know the reason, exactly, but IS doesn't seem to be able to synch GUIDs for components for minor upgrades when the dynamic link is more than one folder "deep".
From what I have seen in these forums (and in my experience) you will have issues with minor updates if you have dynamic links that include subfolders. You would be better off either creating a component for each subfolder, or using major upgrades (uninstall, then reinstall) if you use dynamic links with subfolders.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 20, 2010
01:27 AM
I had the same opinion as Kathy had.,.. Try creating individual components for each file/folder..
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Dec 22, 2010
01:53 AM
Thanks to Kathy for your detailed reply. ^^