N
npritchard
i'm using using Win32::GuiTest to programmatically uninstall an
application. for that, i need to launch the uninstaller (setup.exe) as
a separate process *and* return back to the script so i can use the
sendkeys fucntion. this works great for the compressed installer where
i issue a simple:
system ("start c:\\guitest\\test\\myapp.exe");
Win32::GuiTest::SendKeys("{ENTER}");
however, i'm running into problems while uninstalling.
=======================
@args = ("C:\\Program Files\\InstallShield Installation
Information\\{71A2182D-A59E-4560-80BD-71E3D21A13F3}\\setup.exe",
"-forced_uninstall");
#system(@args) == 0 or die "crap";
system(@args);
===============================
this doesn't work because the uninstaller is launched in the same
process, so the next command is never executed
also, the following does nothing. no error but the uninstaller is never
launched
==============================
system("start /D \"C:\\Program Files\\InstallShield Installation
Information\\\{71A2182D-A59E-4560-80BD-71E3D21A13F3\}\\\" setup.exe
-forced_uninstall");
=============================
i can chdir to the installshield root directory and:
=============================
system("start $installShieldGUID/setup.exe -forced_uninstall");
=============================
this works but doesn't seem like the best solution. it also forces me
to reboot my machine which is normally unneccessary.
any hints/ideas are appreciated.
application. for that, i need to launch the uninstaller (setup.exe) as
a separate process *and* return back to the script so i can use the
sendkeys fucntion. this works great for the compressed installer where
i issue a simple:
system ("start c:\\guitest\\test\\myapp.exe");
Win32::GuiTest::SendKeys("{ENTER}");
however, i'm running into problems while uninstalling.
=======================
@args = ("C:\\Program Files\\InstallShield Installation
Information\\{71A2182D-A59E-4560-80BD-71E3D21A13F3}\\setup.exe",
"-forced_uninstall");
#system(@args) == 0 or die "crap";
system(@args);
===============================
this doesn't work because the uninstaller is launched in the same
process, so the next command is never executed
also, the following does nothing. no error but the uninstaller is never
launched
==============================
system("start /D \"C:\\Program Files\\InstallShield Installation
Information\\\{71A2182D-A59E-4560-80BD-71E3D21A13F3\}\\\" setup.exe
-forced_uninstall");
=============================
i can chdir to the installshield root directory and:
=============================
system("start $installShieldGUID/setup.exe -forced_uninstall");
=============================
this works but doesn't seem like the best solution. it also forces me
to reboot my machine which is normally unneccessary.
any hints/ideas are appreciated.