Reputation: 97
I am using a Win7 64 bit system. I have a 32 bit program installed in a my computer through an exe installer i.e it was not installed by msi. Let us say its version is 1.0. This program folder has a uninstall.exe file which on clicking uninstalls this program.
Now I have made an msi package using wise for windows installer 5.0 for the next version 2.0 . Now before msi installs the files, I want to call the uninstall.exe on my system from the msi itself and remove all the existing files so that the msi install can be clean one.
I have tried using the execute program from destination command in msi script in the tool. I have given the path and name of the exe to be called just under the "installvalidate" command. But I get an error:
Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personal or package vendor.
To resolve this issue I have tried the following: 1. Using Administrator account 2. Providing a Install as administrator option in context menu of msi 2. Switching off antivirus 3. In cmd, typing “msiexec u/unregister” and pressing enter. In the command prompt again, typing “msiexec /register“
But it has not helped. I am trying to call uninstall because without it I am getting two control panel entries after msi install. From the exe installer and from the msi installer.
Checked the logfile: some extracts...
Action ended 12:05:26: InstallValidate. Return value 1.
MSI (s) (6C:18) [12:05:26:714]: Doing action: uninstallexe
Action 12:05:26: uninstallexe.
Action start 12:05:26: uninstallexe.
MSI (s) (6C:18) [12:05:26:714]: Note: 1: 2235 2: 3: ExtendedType 4: SELECT Action
,Type
,Source
,Target
, NULL, ExtendedType
FROM CustomAction
WHERE Action
= 'uninstallexe'
MSI (s) (6C:18) [12:05:26:730]: Note: 1: 1721 2: uninstallexe 3: C:\Program Files (x86)\SOME_PROGRAM\ 4: uninstal.exe
DEBUG: Error 2835: The control ErrorIcon was not found on dialog ErrorDialog
Internal Error 2835. ErrorIcon, ErrorDialog
Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: uninstallexe, location: C:\Program Files (x86)\SOME_PROGRAM\, command: uninstal.exe
MSI (s) (6C:18) [12:05:29:350]: Product: SOME_PROGRAM 2.0 -- Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: uninstallexe, location: C:\Program Files (x86)\SOME_PROGRAM\, command: uninstal.exe
Action ended 12:05:29: uninstallexe. Return value 3. Action ended 12:05:29: INSTALL. Return value 3.
...... Did not get much idea.
Upvotes: 0
Views: 420
Reputation: 20790
It's not clear from your post exactly how the external program is being initiated, and what "execute program from destination command in msi script " means (at least to me). Error 1721 is a Windows Installer error, and since you seem to be using script of some kind that runs the program, it means that the script is failing, not the external program because Windows Installer is not initiating the external program - the script is. So focus on the "script" not the external program or Windows Installer.
A verbose log might help. Start the install with msiexec /I [path to msi file] /l*vx [path to text log file] and see if there are any clues.
If your execute is before InstallValidate then it will not run with elevation, so if the script requires elevated privileges it will fail.
Upvotes: 0