...your solution does not fully fit my needs...
Like I say, it would be easier if you would explain what your needs are...
Maybe this will do what you want?
P:\test>type detach.pl ## A script to detach scripts
#! perl -lw
use strict;
use Win32::Process;
print "@ARGV";
my $cmdline = "perl.exe @ARGV";
print $cmdline;
Win32::Process::Create(
my $hProc, $^X, $cmdline, 0, DETACHED_PROCESS, '.'
) or die $^E;
print "PID: ", $hProc->GetProcessID;
P:\test>type test.pl ## A script to detach
#! perl -slw
use strict;
close $_ for *STDIN, *STDOUT, *STDERR;
open LOG, '>', 'my.log' or die $!;
select LOG;
$|=1;
print ~~localtime while sleep 2;
P:\test>del my.log
P:\test>cmd
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
P:\test>detach test.pl
test.pl
perl.exe test.pl
PID: 3540
P:\test>u:tail -f my.log
Tue Sep 14 17:39:05 2004
Tue Sep 14 17:39:07 2004
Tue Sep 14 17:39:09 2004
Tue Sep 14 17:39:11 2004
Tue Sep 14 17:39:13 2004
Tue Sep 14 17:39:15 2004
Tue Sep 14 17:39:17 2004
^C
P:\test>exit
^C
P:\test>u:tail -f my.log
Tue Sep 14 17:39:07 2004
Tue Sep 14 17:39:09 2004
Tue Sep 14 17:39:11 2004
Tue Sep 14 17:39:13 2004
Tue Sep 14 17:39:15 2004
Tue Sep 14 17:39:17 2004
Tue Sep 14 17:39:19 2004
Tue Sep 14 17:39:21 2004
Tue Sep 14 17:39:23 2004
Tue Sep 14 17:39:25 2004
Tue Sep 14 17:39:27 2004
Tue Sep 14 17:39:29 2004
^C
Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"Think for yourself!" - Abigail
"Memory, processor, disk in that order on the hardware side. Algorithm, algorithm, algorithm on the code side." - tachyon
|