Repair bring backs the file I deleted using RemoveFile table in a patch?
Hi,
I've been trying to delete a file through a patch using MSI's RemoveFile table. The issue I'm facing is that as soon as I run repair the files comes back.
Now, this appears logical since InstallFiles action comes after RemoveFiles action. So the file is removed when patch is applied. But as soon as user does a repair which in turn causes a REINSTALL=ALL, the InstallFiles action installs the file back. I don't want the file to come back at patch or repair.
Now I can delete the file from File table and then create a patch. But this approach creates sequencing issues when I try to create an msp by comparing the old and new MSI. Probably this is because the number of rows are different in new and old MSI.
Is there a way I can achieve this without a custom action? I'm sure there must be a way to achieve this in Windows installer as it seems a very common scenario.
I've been trying to delete a file through a patch using MSI's RemoveFile table. The issue I'm facing is that as soon as I run repair the files comes back.
Now, this appears logical since InstallFiles action comes after RemoveFiles action. So the file is removed when patch is applied. But as soon as user does a repair which in turn causes a REINSTALL=ALL, the InstallFiles action installs the file back. I don't want the file to come back at patch or repair.
Now I can delete the file from File table and then create a patch. But this approach creates sequencing issues when I try to create an msp by comparing the old and new MSI. Probably this is because the number of rows are different in new and old MSI.
Is there a way I can achieve this without a custom action? I'm sure there must be a way to achieve this in Windows installer as it seems a very common scenario.
0 Comments
[ + ] Show comments
Answers (2)
Please log in to answer
Posted by:
blacklisted_packager
13 years ago
Posted by:
anonymous_9363
13 years ago
It seems pretty clear that you haven't followed my advice of last week and that you still don't understand how patching works.
Think of patching literally: think how you might patch some material. How does that work? You replace one section of material with another. If you remove material, that's not patching. See? You're performing the latter action and you cannot use a patch for that. You need to create an update.
Think of patching literally: think how you might patch some material. How does that work? You replace one section of material with another. If you remove material, that's not patching. See? You're performing the latter action and you cannot use a patch for that. You need to create an update.
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.