View Single Post
Old 11-22-2006   #1 (permalink)
Thomas Mogwitz


 
 

How to execute (perl) scripts in Powershell without DOS box

Hi folks,

I am trying to execute a bunch of perl scripts from within a Powershell
by simply writing their name (and pressing Return, of course). The
problem is, everytime I do so a DOS box (cmd.exe) pops up, displays
the script output and closes itself. I instead want to see the output
in my Powershell.
I get the desired result by executing "perl.exe xyz.pl", but why not
when I simply execute the script?

I searched the registry and found out that the file ending '.pl' is
associated with a 'PersistentHandler' that is connected to a class id with
'query.dll' as 'InProcServer32'. Here I'm stuck. I suppose that this
query.dll again searches the registry for the registered file type .pl and
finds out that it is linked to the file type 'Perl', which has a shell open
command 'perl.exe %1'. So what's the difference between finding that
out and running perl.exe with my script and me executing
"perl.exe xyz.pl"?
My System SpecsSystem Spec