79753199

Date: 2025-09-02 07:27:56
Score: 1
Natty:
Report link

This behavior may be caused by the design of Windows Installer service. All custom action binaries (i.e. the .dll file) are extracted in the user's %temp% location at the very beginning of the installation.

So, during an upgrade the installation process first extracts the new version of your custom action DLL, then it continues with the uninstall of your old product version and during this stage the old version of your custom action DLL binary is extracted again and thus it will overwrite the existing DLL. Afterwards when the new version of your custom action DLL is called it will actually use the old version of the binary.

I think the best solution to avoid this behavior/issue, as @Joshua Okorie suggested too, will be to make sure you rename the binary of your custom action DLL each time you rebuild it. For instance you can try to use a template that include the file version in its name.

Reasons:
  • Long answer (-0.5):
  • No code block (0.5):
  • User mentioned (1): @Joshua
Posted by: herman.smn