dbruning
15 years agoNew Contributor
"The underlying object does not exist" with MSIEXEC
Hi,
Just wanted to register a problem & solution I came across trying to automate an MSI installer created with InstallShield.
The root of the problem is that when the installer runs, it actually spawns off two processes, both named MSIEXEC (one running as SYSTEM, one running as the current logged-in user). This confuses the hell out of TestComplete's name mapping - it wants to use the "index" property to disambiguate between the two, but unfortunately it seems a matter of luck as to which MSIEXEC process gets index=1 and which gets index=2.
So after several hours trying to figure out why my recorded scripts sometimes ran & sometimes didn't, I finally noticed the second MSIEXEC process, and was able to disambiguate by ticking the "required child" property of the MSIEXEC mapped object for one of its child windows. The process I actually want to automate has the child window, the process running as SYSTEM doesn't have any.
Hope this saves someone some time!
Cheers,
Darren.
Just wanted to register a problem & solution I came across trying to automate an MSI installer created with InstallShield.
The root of the problem is that when the installer runs, it actually spawns off two processes, both named MSIEXEC (one running as SYSTEM, one running as the current logged-in user). This confuses the hell out of TestComplete's name mapping - it wants to use the "index" property to disambiguate between the two, but unfortunately it seems a matter of luck as to which MSIEXEC process gets index=1 and which gets index=2.
So after several hours trying to figure out why my recorded scripts sometimes ran & sometimes didn't, I finally noticed the second MSIEXEC process, and was able to disambiguate by ticking the "required child" property of the MSIEXEC mapped object for one of its child windows. The process I actually want to automate has the child window, the process running as SYSTEM doesn't have any.
Hope this saves someone some time!
Cheers,
Darren.