I have 3 components that can be installed in any combination.
The clean installation is fine.
When I restart the installation, and modify it, the old components are deleted, and the new ones installed correctly.
The registry key I set reflects the correct combination, it's written to the registry correctly.
Up to now, it all works as expected.
Then I do a build, and I have unchecked the option set that says change revision code automatically upon rebuild.
Now, the installer goes into the modify screen, I can select a different set of options, my variable is set correctly, I execute the write registry function, but the registry never changes.
Also, the old components are not deleted from the system, only new ones added.
The revision code did not change, what is going on?
Build action
It's normal behavior.
As far as the revision code doesn't change, if a previous installed product is on the system with the same revision code, then nothing changes, because IA understands that the same product is installed.
If you increase the revision code, then IA will understand that a previous version of the product is installed on the target machine and act correctly.
As far as the revision code doesn't change, if a previous installed product is on the system with the same revision code, then nothing changes, because IA understands that the same product is installed.
If you increase the revision code, then IA will understand that a previous version of the product is installed on the target machine and act correctly.
Panagiotis Kefalidis
Software Design Team Lead
\"In order to succeed, your desire for success should be greater than your fear of failure\"
InstallAware Software Corporation
Software Design Team Lead
\"In order to succeed, your desire for success should be greater than your fear of failure\"
InstallAware Software Corporation
Hi -
If IA only looks at the revision code, then something is wrong here.
There are 3 cases when I run the installer again -
1 - Same build same revision code -
NEEDSUPGRADE is not set
The old components are deleted.
The registry is written correctly.
2 - New build, same revision code
NEEDSUPGRADE is not set
The old components are NOT deleted.
The registry is written NOT correctly.
3 - new build, new revision code
NEEDSUPGRADE IS set
IA wants to delete the existing installation, not modify it.
Case 1 and 3, I understand, but If IA only looks at the revision code, then case 2 does not make sense.
Thanks
Gary
If IA only looks at the revision code, then something is wrong here.
There are 3 cases when I run the installer again -
1 - Same build same revision code -
NEEDSUPGRADE is not set
The old components are deleted.
The registry is written correctly.
2 - New build, same revision code
NEEDSUPGRADE is not set
The old components are NOT deleted.
The registry is written NOT correctly.
3 - new build, new revision code
NEEDSUPGRADE IS set
IA wants to delete the existing installation, not modify it.
Case 1 and 3, I understand, but If IA only looks at the revision code, then case 2 does not make sense.
Thanks
Gary
-
- Posts: 904
- Joined: Thu Dec 22, 2005 7:03 pm
- Contact:
Hi Gary!
Case #2 is simply the way Windows Installer works. The revision code of a setup package lets Windows Installer uniquely identify it. Each package must have a unique revision code, and this is why the revision code is set to auto-change by default.
Now if you are disabling the auto-change feature, it is really your responsibility to manually change the revision code every time you change your setup - newer files, or newer logic. If you don't change the revision code, you are essentially breaking and confusing MSI. Which is why it leads to the results you have observed.
Case #2 is simply the way Windows Installer works. The revision code of a setup package lets Windows Installer uniquely identify it. Each package must have a unique revision code, and this is why the revision code is set to auto-change by default.
Now if you are disabling the auto-change feature, it is really your responsibility to manually change the revision code every time you change your setup - newer files, or newer logic. If you don't change the revision code, you are essentially breaking and confusing MSI. Which is why it leads to the results you have observed.
Candice Jones
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/
Ok, it sounds like if I use MSI, I really need 2 different installs with 2 different product codes. One for programs, and the other for data, as I don't want to delete all those data files when new programs get installed.
This just adds more complexity than I wanted.
Thanks for all the quick responses.
Gary
This just adds more complexity than I wanted.
Thanks for all the quick responses.
Gary
-
- Posts: 904
- Joined: Thu Dec 22, 2005 7:03 pm
- Contact:
Hi Gary!
If the data files must not be deleted, you can mark them as permanent in Install Files.
If the data files must not be deleted, you can mark them as permanent in Install Files.
Candice Jones
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/
-
- Posts: 3452
- Joined: Thu Dec 22, 2005 7:17 pm
- Contact:
Gary,
The files get downloaded when an installation command that needs access to source media executes. This does not wait for Apply Install to be called. Install Files would be a command that would trigger a media download. Write Registry would not - just two examples.
The files get downloaded when an installation command that needs access to source media executes. This does not wait for Apply Install to be called. Install Files would be a command that would trigger a media download. Write Registry would not - just two examples.
Michael Nesmith
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/
Well, this is still driving me crazy.
I have 3 components A,B,C - all of the install files are marked permanent
On a clean install, I install component A - it works fine.
Now I restart the installer, it goe into modify, I select A and B, I trace through the code, and the install files for A and B are both called.
Only the files for component A are actually installed - component B is not added.
I have unselected Component A, and selected B - still the A files are installed again, B is ignored.
I thought that permanent just means the the files are not uninstalled - and they are not, but it seems to mean that the original installation is permanent and can't be modified - at least that's how it's working.
Gary
I have 3 components A,B,C - all of the install files are marked permanent
On a clean install, I install component A - it works fine.
Now I restart the installer, it goe into modify, I select A and B, I trace through the code, and the install files for A and B are both called.
Only the files for component A are actually installed - component B is not added.
I have unselected Component A, and selected B - still the A files are installed again, B is ignored.
I thought that permanent just means the the files are not uninstalled - and they are not, but it seems to mean that the original installation is permanent and can't be modified - at least that's how it's working.
Gary
Who is online
Users browsing this forum: No registered users and 27 guests