By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
434,916 Members | 1,068 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 434,916 IT Pros & Developers. It's quick & easy.

Executing a PERL script from ASP.NET appl.

P: n/a
Hey 2gether!

I'm trying to execute a PERL script on the web server when the user presses
a button in an ASP.NET Web Application using Visual Basic. The most obvious
solution for me seemed to be to use the 'Shell()'-command [Like this:
Shell("C:\\Inetpub\\wwwroot\\BasicDataRequests\\Ro bot.pl",
AppWinStyle.NormalNoFocus, True, 5000)].
This didn't work: Either I get an "File not found" error, or I get no error
at all, but the PERL script isn't executed anyway. The strange thing is that
I managed to execute a .bat file for example. Why the hell can't I execute
the PERL script?
Just to make sure, I also tried:
Shell("C:\\Perl\\bin\\perl.exe
C:\\Inetpub\\wwwroot\\BasicDataRequests\\Robot.pl" ,
AppWinStyle.NormalNoFocus, True, 5000)
... to make sure he can find the PERL-interpreter.

Has anyone got a clue, what the problem is? (Security? Userrights? Wrong
path? etc. etc.?) Or has anyone got a different solution for this problem
(target: Execute PERL script out of ASP.NET appl. using VB)?

I've read that with the PerlASPX module you can run PERL in ASP.NET, but
that costs 295$. Maybe there are any other known, free products..?

Thanks alot in before!
Jul 21 '05 #1
Share this Question
Share on Google+
3 Replies


P: n/a
You realize that executing applications from web pages is probably a bad
idea, right?

If you can execute the command interpreter then you should be able to run
the Perl one as well, though maybe the issue is quotes around the arguments
or something like that.

If you install ActivePerl you can use Perl in IIS either in "CGI" mode or as
a scripting language in ASP pages or under its own IIS handler (pages that
have the .plx extension).

I'd recommend the latter if your Perl script can run under IIS.
--
Klaus H. Probst, MVP
http://www.vbbox.com/
"PzYon" <Pz***@discussions.microsoft.com> wrote in message
news:57**********************************@microsof t.com...
Hey 2gether!

I'm trying to execute a PERL script on the web server when the user presses a button in an ASP.NET Web Application using Visual Basic. The most obvious solution for me seemed to be to use the 'Shell()'-command [Like this:
Shell("C:\\Inetpub\\wwwroot\\BasicDataRequests\\Ro bot.pl",
AppWinStyle.NormalNoFocus, True, 5000)].
This didn't work: Either I get an "File not found" error, or I get no error at all, but the PERL script isn't executed anyway. The strange thing is that I managed to execute a .bat file for example. Why the hell can't I execute
the PERL script?
Just to make sure, I also tried:
Shell("C:\\Perl\\bin\\perl.exe
C:\\Inetpub\\wwwroot\\BasicDataRequests\\Robot.pl" ,
AppWinStyle.NormalNoFocus, True, 5000)
.. to make sure he can find the PERL-interpreter.

Has anyone got a clue, what the problem is? (Security? Userrights? Wrong
path? etc. etc.?) Or has anyone got a different solution for this problem
(target: Execute PERL script out of ASP.NET appl. using VB)?

I've read that with the PerlASPX module you can run PERL in ASP.NET, but
that costs 295$. Maybe there are any other known, free products..?

Thanks alot in before!

Jul 21 '05 #2

P: n/a
How about trying Process.Start(). ?

http://cheeso.members.winisp.net/src...e=shellex.aspx
"Klaus H. Probst" <us*******@simulplex.net> wrote in message
news:OH****************@TK2MSFTNGP09.phx.gbl...
You realize that executing applications from web pages is probably a bad
idea, right?

If you can execute the command interpreter then you should be able to run
the Perl one as well, though maybe the issue is quotes around the
arguments
or something like that.

If you install ActivePerl you can use Perl in IIS either in "CGI" mode or
as
a scripting language in ASP pages or under its own IIS handler (pages that
have the .plx extension).

I'd recommend the latter if your Perl script can run under IIS.
--
Klaus H. Probst, MVP
http://www.vbbox.com/
"PzYon" <Pz***@discussions.microsoft.com> wrote in message
news:57**********************************@microsof t.com...
Hey 2gether!

I'm trying to execute a PERL script on the web server when the user

presses
a button in an ASP.NET Web Application using Visual Basic. The most

obvious
solution for me seemed to be to use the 'Shell()'-command [Like this:
Shell("C:\\Inetpub\\wwwroot\\BasicDataRequests\\Ro bot.pl",
AppWinStyle.NormalNoFocus, True, 5000)].
This didn't work: Either I get an "File not found" error, or I get no

error
at all, but the PERL script isn't executed anyway. The strange thing is

that
I managed to execute a .bat file for example. Why the hell can't I
execute
the PERL script?
Just to make sure, I also tried:
Shell("C:\\Perl\\bin\\perl.exe
C:\\Inetpub\\wwwroot\\BasicDataRequests\\Robot.pl" ,
AppWinStyle.NormalNoFocus, True, 5000)
.. to make sure he can find the PERL-interpreter.

Has anyone got a clue, what the problem is? (Security? Userrights? Wrong
path? etc. etc.?) Or has anyone got a different solution for this problem
(target: Execute PERL script out of ASP.NET appl. using VB)?

I've read that with the PerlASPX module you can run PERL in ASP.NET, but
that costs 295$. Maybe there are any other known, free products..?

Thanks alot in before!


Jul 21 '05 #3

P: n/a
Hi Dino -

I believe the VB "Shell" command is just a wrapper around Process.Start. In
any case if the target EXE has a problem with the command line format (the
Perl interpreter is touchy about this, I know) or he has a permissions issue
or something like that it won't work no matter what.

It's still a bad idea to run EXEs from web processes though =)
--
Klaus H. Probst, MVP
http://www.vbbox.com/
"Dino Chiesa [Microsoft]" <di****@online.microsoft.com> wrote in message
news:u3**************@TK2MSFTNGP09.phx.gbl...
How about trying Process.Start(). ?

http://cheeso.members.winisp.net/src...e=shellex.aspx
"Klaus H. Probst" <us*******@simulplex.net> wrote in message
news:OH****************@TK2MSFTNGP09.phx.gbl...
You realize that executing applications from web pages is probably a bad
idea, right?

If you can execute the command interpreter then you should be able to run the Perl one as well, though maybe the issue is quotes around the
arguments
or something like that.

If you install ActivePerl you can use Perl in IIS either in "CGI" mode or as
a scripting language in ASP pages or under its own IIS handler (pages that have the .plx extension).

I'd recommend the latter if your Perl script can run under IIS.
--
Klaus H. Probst, MVP
http://www.vbbox.com/
"PzYon" <Pz***@discussions.microsoft.com> wrote in message
news:57**********************************@microsof t.com...
Hey 2gether!

I'm trying to execute a PERL script on the web server when the user

presses
a button in an ASP.NET Web Application using Visual Basic. The most

obvious
solution for me seemed to be to use the 'Shell()'-command [Like this:
Shell("C:\\Inetpub\\wwwroot\\BasicDataRequests\\Ro bot.pl",
AppWinStyle.NormalNoFocus, True, 5000)].
This didn't work: Either I get an "File not found" error, or I get no

error
at all, but the PERL script isn't executed anyway. The strange thing is

that
I managed to execute a .bat file for example. Why the hell can't I
execute
the PERL script?
Just to make sure, I also tried:
Shell("C:\\Perl\\bin\\perl.exe
C:\\Inetpub\\wwwroot\\BasicDataRequests\\Robot.pl" ,
AppWinStyle.NormalNoFocus, True, 5000)
.. to make sure he can find the PERL-interpreter.

Has anyone got a clue, what the problem is? (Security? Userrights? Wrong path? etc. etc.?) Or has anyone got a different solution for this problem (target: Execute PERL script out of ASP.NET appl. using VB)?

I've read that with the PerlASPX module you can run PERL in ASP.NET, but that costs 295$. Maybe there are any other known, free products..?

Thanks alot in before!



Jul 21 '05 #4

This discussion thread is closed

Replies have been disabled for this discussion.