Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number
 
PerlMonks  

Re^2: calling .EXE through Perl script

by Thelonius (Priest)
on May 11, 2006 at 10:38 UTC ( [id://548671]=note: print w/replies, xml ) Need Help??


in reply to Re: calling .EXE through Perl script
in thread calling .EXE through Perl script

How are you running this script? If you run it from the command line, you'll get these errors:
Global symbol "$dir" requires explicit package name at test.pl line 4. Global symbol "$dir" requires explicit package name at test.pl line 5. Global symbol "$dir" requires explicit package name at test.pl line 5. Global symbol "$file" requires explicit package name at test.pl line 6 +. Global symbol "$file" requires explicit package name at test.pl line 7 +. Execution of test.pl aborted due to compilation errors.
If you're running the program by double-clicking on the file in Windows Explorer, you're probably not going to see the errors before the DOS box closes.

I think this code is what you want:

use strict; use warnings; my $dir = "C:\\parser_pgm\\test"; opendir(DIR, $dir) or die "Can't open $dir: $!"; while(my $file = readdir DIR) { my $pathname = "$dir\\$file"; if (-f $pathname) { # I added the -f test after running this and finding # out that readdir returns "." and ".." # (At least on the version of ActivePerl I am using) print STDERR "running parser_pgm.exe on $pathname\n"; # for debugg +ing system("parser_pgm.exe \"$pathname\""); # I added quotes in case there are spaces in the # file name (or in directory name in case you change it. if ($? != 0) { print STDERR "parser_pgm returned error $?\n"; } } } closedir(DIR);

Replies are listed 'Best First'.
Re^3: calling .EXE through Perl script
by Anonymous Monk on May 11, 2006 at 11:58 UTC
    Hi Thelonius,
    Thanks a lot for your help. Indeed your code works. And as suggested by other monks I was not reading the output and hence was not aware if script really did the job.

    Thanks one and all for the needful.

    Regards
    Ashutosh

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others admiring the Monastery: (2)
As of 2024-06-22 04:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuli‥ 🛈The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.