Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re: Re: Re: Re: Re: The behavior of Win32::OLE->new

by jsprat (Curate)
on Nov 24, 2003 at 01:40 UTC ( #309404=note: print w/ replies, xml ) Need Help??

in reply to Re: Re: Re: Re: The behavior of Win32::OLE->new
in thread The behavior of Win32::OLE->new

Why do they need to be different processes?

Have a look at Win32::Process, it creates processes using the Windows API. A quick test shows that each explorer window shows up as its own process. It also includes a kill method that kills a given process ID.

I'm not sure that Win32::Process ships with ActiveState perl, but ppm shows a couple of versions available.

A quick proof-of-concept follows...

use strict; use warnings; use Win32::Process; use Win32; sub ErrorReport{ print Win32::FormatMessage( Win32::GetLastError()) } my @processes; for (0, 1) { my $tmpPO; Win32::Process::Create($tmpPO, "F:\\Program Files\\Internet Explorer\\IEXPLORE.EXE", "", 0, CREATE_NEW_PROCESS_GROUP, "." )|| die ErrorReport(); push @processes, $tmpPO; print "Process $_ created: Process ID is ", $processes[$_]->GetProcessID, ".\n"; } print "Press enter to kill current processes:"; <STDIN>; $processes[$_]->Kill(0) for (0, 1);

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://309404]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others wandering the Monastery: (7)
As of 2016-06-25 04:00 GMT
Find Nodes?
    Voting Booth?
    My preferred method of making French fries (chips) is in a ...

    Results (323 votes). Check out past polls.