cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
drewdy
Level 4

Custom Action False Positive

Hi,

I have an installer that uses a custom action to call an executable. This custom action has 3 conditions, two set by me, and the third that is based on UILevel. It shouldn't run on any install other than a silent (UILevel = 2) and has done so for a long time. It also works fine on the majority of machines and vm's I've tested on.

A coworker has recently ran into trouble with the installer on his virtual machine though and can reproduce the error every time. On uninstall the custom action attempts to run but it shouldn't because he is running with full UI. I had him uninstall with logging and the log says UILevel = 5, but it still tries to run this custom action.

Does anyone know what might be going on here? As I said, it's only on his vm and we've had problems with VMs before but they've always been systemic (all VMs) rather than selective like this one. Any ideas what might be going on? I've checked that he is an administrator and that he has write permission. The error is 1720; it can't find the executable the custom action calls, but the custom action shouldn't be running in the first place. Any ideas? Thanks.

Drewdy
Labels (1)
0 Kudos
(5) Replies
TheResearch
Level 6

What is the exact condition that is set on the Custom Action?
0 Kudos
drewdy
Level 4

The Install Exec Condition is:

UILevel = 2 AND NEED_DBUPDATE = 2 AND ISReleaseFlags >< "SBCS"

The last two conditions are true but the UILevel is 5 and should therefore fail the condition. Thanks for your help.
0 Kudos
TheResearch
Level 6

I created a sample application and tested the installation and uninstallation based on the conditions you mentioned.

Both install and uninstall behaved as expected. During uninstall from ARP i get the UILevel as '3', since the installer runs the application in BASIC mode.

Confused as to why it is not working in your case.

1. How are you uninstalling your appl? From cmd line or from ARP?
2. For trouble shooting, create a vbscript Custom action and use msgbox to display the values of the 3 properties in the contion.

If still it is not working, post ur log.. May be the experts can guide you as well.
0 Kudos
drewdy
Level 4

Update!

OK after delving deeper into the logs, I discovered that the custom action wasn't running when it shouldn't, it is also tied to the "Next" button on one of our dialog screens and that is what is failing (I inherited these installers so am still learning the innards of them).

Now I'm confused as to why the action is giving error 1720. The action calls an executable that is packaged with the installer. The executable runs on both install and uninstall but only errs on uninstall. I can run the line from cmd.exe fine, it just doesn't like the installer calling it for some reason. What's worse is that because the fail apparently occurs in the executable, the installer log is no help. Are executable calls handled differently when done from installshield?

Again, the main source of confusion is that this only happens on certain machines, all of which are virtual machines, but does not occur on all of our vm's. Any help is appreciated. Thanks.

edit: clarified phrasing
0 Kudos
drewdy
Level 4

It appears that the temp file that is supposed to contain the executable isn't found when the action tries to run. I've logged this error multiple times, but still can get no more information than the generic 1720 message.

I'm able to run the executable from command prompt with no problems so it's gotta be something in the installshield call.

Does anyone know how I could at least get more information from this bug, if not a potential solution? Thanks.
0 Kudos