Domanda

I have a small question.

Which action removes installed product info (which was advertised with PublishProduct action) during uninstallation?

Thank's in advance.

È stato utile?

Soluzione

Short answer: InstallFinalize.

Long answer: it comes down to the InstallExecuteSequence being the thing that always runs removal. I have a deeper investigation on my blog.

Altri suggerimenti

Frankly I never use advertising, but if I were to guess I would say that the advertisement sequence is defining a subset of the InstallExecuteSequence that is run during advertisement, and that the actual uninstall of the advertised product is actually running the full InstallExecuteSequence in uninstall mode to run standard actions such as UnPublishComponents, UnPublishFeatures, etc... I think this is logical since certain features could already have been installed by installation on demand, and a full uninstall is then necessary to clean up.

One way to test this is to insert message boxes in the InstallExecuteSequence to determine what sequence is run. I don't have the tools required to test this here and now. Again, until I have tested this with debugging scripts inserted into the sequences I can't be sure of anything.

The MSI SDK and Installshield's help file may provide some clues. In concluding I would like to ask you why you need to know what action uninstalls the product info? Perhaps we can provide a different way to achive what you want to do. Much of the point of MSI is to leave most of the work to standardized actions, and it is not good to interfere with these processes. Custom actions should be used only for stuff that can never be achived with standard actions.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top