- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Minor upgrade - change component key file
- 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
Hi,
What are the consequences of changing component's key file during minor upgrade. I have a component with one dll which I need to change to a different file. I have tested this and it seems to work fine, except that the old file is not removed on uninstall.
However the official guidelines state that is should not be done. Could someone tell we why?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Yeah, it's better to stick to official rules. Even though it seems to work fine, it may return someday as unexpected error. Thanks.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
You are correct that Microsoft's official rules state that a Minor Upgrade does not support the removal of a Key File:
"....a small update or minor upgrade must never change the name of a component's key file because this would require changing the component code."
https://docs.microsoft.com/en-us/windows/win32/msi/changing-the-product-code
As Minor Upgrades also don't support changing the component code which is the same as removing a component a Major Upgrade is required.
As for what would follow if the rules are broken - the phrase often used is "unexpected behaviour", and I have seen many strange events from seemingly unconnected components in different features failing to install, to files being orphaned.
Ignoring the rules could result in issues that are simply not documented or supported and is therefore not recommended.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Yeah, it's better to stick to official rules. Even though it seems to work fine, it may return someday as unexpected error. Thanks.
![](/skins/images/8C9D13A71C7F7695F3262372C0172D68/responsive_peak/images/icon_anonymous_message.png)