ASPN ActiveState Programmer Network
ActiveState
/ Home / Perl / PHP / Python / Tcl / XSLT /
/ Safari / My ASPN /
Cookbooks | Documentation | Mailing Lists | Modules | News Feeds | Products | User Groups


Recent Messages
List Archives
About the List
List Leaders
Subscription Options

View Subscriptions
Help

View by Topic
ActiveState
.NET Framework
Open Source
Perl
PHP
Python
Tcl
Web Services
XML & XSLT

View by Category
Database
General
SOAP
System Administration
Tools
User Interfaces
Web Programming
XML Programming


MyASPN >> Mail Archive >> pdk
pdk
RE: PerlApp .exe, Perl script execution produce different results
by Jamie Harris other posts by this author
Jun 27 2005 1:42PM messages near this date
Re: (SPAM)(23.1752) PerlApp .exe, Perl script execution produce different results | How to build an ActivePerl compatible Perl?
That is a good suggestion to try, but it doesn't answer the question of
why non-compiled Perl programs using IPC::Run no longer work.  
 
I installed IPC::Run through PPM and ran the test application below on
my Windows XP machine.  I didn't get an error, but it does eventually
time out.  I'm not too familiar with the module but I'm going to guess
that timing out isn't what it is supposed to do?  
(diskpart is in my path, I checked that to be sure).  I tried it
without using Perlapp. 
 
-----------------------------------------------------
James Harris
Junior Systems Programmer/Analyst
Information Technology Division
Frederick Community College
-----------------------------------------------------

> >> "Ovod-Everett, Toby" <tovod-everett@[...].com> 6/27/2005
3:15:17 PM > >>

I could be wrong, but the first thing I would do is to try adding the
line:

use Win32::Process;

My guess would be that IPC::Run dynamically determines the OS on the
fly
and then demand-loads Win32::Process.  You're running into trouble
because the static code analysis has no way of determining that
Win32::Process needs to be packaged up with the EXE.  Adding the use
line supplies an explicit static load for Win32::Process that PerlApp
will take as a hint that the module is required.

Of course, it could be something else (i.e. I haven't verified this,
tested the code, or anything else . . .)

--Toby Ovod-Everett

-----Original Message-----
From: pdk-bounces@[...].com
[mailto:pdk-bounces@[...].com] On Behalf Of
lemons_terry@[...].com
Sent: Thursday, June 23, 2005 8:44 AM
To: pdk@[...].com
Subject: RE: PerlApp .exe, Perl script execution produce different
results

Hi

More information on this problem.  Installing ActiveState Perl Dev Kit
6.0
Deployment on my system breaks  IPC::Run.

IPC::Run is a CPAN-available module, which is used to spawn
subprocesses
and
control the applications that run in them.  With ActiveState Perl Dev
Kit
6.0 Deployment installed my system, Perl programs that use IPC::Run
stop
working correctly, even when they are run within Komodo or invoked at
the
command line ('perl foo.pl').  When I de-install ActiveState Perl Dev
Kit
6.0 Deployment, these programs using IPC::Run start working again.

What could it be about the ActiveState Perl Dev Kit 6.0 Deployment -
IPC::Run combination that is so pathological?

Here's a small test program that shows the behavior:

    use IPC::Run qw( start pump finish timeout ) ;
    my $in = "";
    my $out = "";
    my $err = "";
    @cmd = ("diskpart", "/?");
    my $h = start \@cmd, \$in, \$out, \$err, timeout( 30000 ) ;
    pump $h;
    print $out;
    finish $h;

Substitute a different program than 'diskpart', if you'd like.

Thanks for the help, in advance!
tl
_______________________________________________
PDK mailing list
PDK@[...].com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs


_______________________________________________
PDK mailing list
PDK@[...].com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
Attachments:
unknown1
unknown2
unknown3
unknown4


Privacy Policy | Email Opt-out | Feedback | Syndication
© ActiveState Software Inc. All rights reserved