You'd wait til the child process spawned by the setup program dies. There're
some modules which can retrieve the current running processes, i.e.
setupsup. Take the following sample as a skeleton:
use Win32::Setupsup;
# spawn your setup program
system("setup.exe");
# assume the child process is named "child" and the child process already
runs
next_while: while(1)
{
Win32::Setupsup::GetProcessList('', \@proc, \@threads);
foreach $p (@proc)
{
# sleep a few seconds and retrieve the process list again if
the child still runs
sleep 5,
next next_while
if lc(${$p}{name}) eq "child";
}
# child process died if wr're here
last;
}
Regards, Jens
-----Original Message-----
From: John Pollock [mailto:[EMAIL PROTECTED]]
Sent: Thursday, December 28, 2000 9:08 PM
To: [EMAIL PROTECTED]
Subject: RE: Installing 32-bit applications
There's one thorny thing to be careful of here, regardless of whether you
use DOS batch scripting or Perl or whatever. If the application you invoke
fires off a sub-application and then quits, then you may run into trouble.
Many of the Microsoft installers work this way, unfortunately; they have an
app called "setup.exe" which spawns subprocesses (usually acmsetup.exe) and
as soon as the child processes are started the main setup.exe process quits,
fooling anything that's waiting into thinking that the whole install is
completed. I don't know whether Perl is smart enough to wait for child
processes of the parent if the parent dies.
john
_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
http://listserv.ActiveState.com/mailman/listinfo/perl-win32-admin
_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
http://listserv.ActiveState.com/mailman/listinfo/perl-win32-admin