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

External exe call from asp.met

P: n/a
Hi Group,

I want to execute a vbs file from an aspx page.
With no success.

For instance, simple script that create a text file with 1 line in it.
Works fine from commandline or dblclicking on it.

But no luck with asp.net.

I have used :
System.Diagnostics.Process
and
Microsoft.VisualBasic.Interaction.Shell

Nothing is working.
No error, no nothing.
It is driving me crazy and I wonder if it could be a security issue.

I have used <identity impersonate with an admin user. Nothing.
All examples I have found on the net are not working.

Can someone help me on this?

Thank you.

Gerald
Dec 9 '05 #1
Share this Question
Share on Google+
6 Replies


P: n/a

"Gerald" <ge*****@hotmail.com> wrote in message
news:Ob*************@TK2MSFTNGP11.phx.gbl...
Hi Group,

I want to execute a vbs file from an aspx page.
With no success.

For instance, simple script that create a text file with 1 line in it.
Works fine from commandline or dblclicking on it.

But no luck with asp.net.

I have used :
System.Diagnostics.Process
and
Microsoft.VisualBasic.Interaction.Shell

Nothing is working.
No error, no nothing.
It is driving me crazy and I wonder if it could be a security issue.

I have used <identity impersonate with an admin user. Nothing.
All examples I have found on the net are not working.

Can someone help me on this?

Thank you.

Gerald


First, why do you wan't to call a vbs script from aspx? Why not simply do in
your aspx code what you are doing in vbs?
Second, how did you determine nothing is working? What exactly are you doing
in your vbs script, you don't expect to see something on the server console
do you?

Willy.

Dec 9 '05 #2

P: n/a
I have a set of vbs script that work for a long time.
At the moment, the only thing I do in my test is creating a file on the
server.
So nothing complicated. I just want to be able to run the script.
After that I will see if I can go further.

Alos, when I call wscript. I can see the process on process viewer, with the
right parameters, but it is not fired
Why?

Thank you.

Gerald
"Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
news:%2******************@TK2MSFTNGP12.phx.gbl...

"Gerald" <ge*****@hotmail.com> wrote in message
news:Ob*************@TK2MSFTNGP11.phx.gbl...
Hi Group,

I want to execute a vbs file from an aspx page.
With no success.

For instance, simple script that create a text file with 1 line in it.
Works fine from commandline or dblclicking on it.

But no luck with asp.net.

I have used :
System.Diagnostics.Process
and
Microsoft.VisualBasic.Interaction.Shell

Nothing is working.
No error, no nothing.
It is driving me crazy and I wonder if it could be a security issue.

I have used <identity impersonate with an admin user. Nothing.
All examples I have found on the net are not working.

Can someone help me on this?

Thank you.

Gerald


First, why do you wan't to call a vbs script from aspx? Why not simply do
in your aspx code what you are doing in vbs?
Second, how did you determine nothing is working? What exactly are you
doing in your vbs script, you don't expect to see something on the server
console do you?

Willy.

Dec 9 '05 #3

P: n/a

"Gerald" <ge*****@hotmail.com> wrote in message
news:uw*************@tk2msftngp13.phx.gbl...
I have a set of vbs script that work for a long time.
At the moment, the only thing I do in my test is creating a file on the
server.
So nothing complicated. I just want to be able to run the script.
After that I will see if I can go further.

Alos, when I call wscript. I can see the process on process viewer, with
the right parameters, but it is not fired
Why?

Thank you.

Gerald


If you see the process in process explorer it means it is running right?
What do you mean with " it's not fired"? Please explain more precisely what
you expect.

Willy
Dec 9 '05 #4

P: n/a
When I try to to fire wscript.exe, I can see it in the process viewer,

So my command line lookl like this:
C:\Windows\System32\wscript.exe D:\Mtpath\testfile.vbs Param1 param2 param3
....

Wscript never closes (But I can kill it if I want) but the vbs file is never
called.
As the file that should be created never appears.

So, my vbs file is this:
========================
Option Explicit
dim oFSO:Set oFSO = wscript.CreateObject("scripting.filesystemobject")
dim oFile:set oFile =
oFSO.CreateTextFile("E:\\wwweb\\supportsoft.aumedi age.be\\Download\\eee.txt",
true)
oFile.writeline("Company = Hardcoded from file")
oFile.close
============================

my code in aspx.cs page is:
============================
System.Diagnostics.Process process1;
process1= new System.Diagnostics.Process();
process1.EnableRaisingEvents = false;
string strCmdLine = " /NoLogo E:\\wwwroot\\CREation2.vbs";
process1.StartInfo.FileName = "C:\\WINDOWS\\system32\\wscript.exe";
process1.StartInfo.Arguments = strCmdLine;
process1.StartInfo.UseShellExecute = false;
process1.StartInfo.RedirectStandardOutput = true;
process1.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process1.StartInfo.CreateNoWindow = true;
process1.Start();
process1.WaitForExit(8000);
if (process1.HasExited) {
SC_E.Text += "exited<br>";
SC_E.Text += "exit code: " + process1.ExitCode.ToString();
}
else {
process1.Kill();
SC_E.Text += "NO exit";
}
process1.Close();
==========================================

Thanks for your help.
It will be really appreciated.

Gerald
Why doesnt he get
"Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
news:%2***************@TK2MSFTNGP12.phx.gbl...

"Gerald" <ge*****@hotmail.com> wrote in message
news:uw*************@tk2msftngp13.phx.gbl...
I have a set of vbs script that work for a long time.
At the moment, the only thing I do in my test is creating a file on the
server.
So nothing complicated. I just want to be able to run the script.
After that I will see if I can go further.

Alos, when I call wscript. I can see the process on process viewer, with
the right parameters, but it is not fired
Why?

Thank you.

Gerald


If you see the process in process explorer it means it is running right?
What do you mean with " it's not fired"? Please explain more precisely
what you expect.

Willy

Dec 9 '05 #5

P: n/a
There could be a security issue. Check for the exit code:
Process.ExitCode != 0
some error happened during execution.

Security can be handled in two ways:
Give ASPNET user execute rights (BAD IDEA) or use
impersonation(BETTER).

Also, try some thing simpler to execute first like: echo hello world

HTH.

Dec 9 '05 #6

P: n/a
Never ever use wscript as exe in a non GUI context like ASP and ASP.NET.
When an error occurs a modal dialog will get displayed to a non interactive
desktop, this dialog is endlessly waiting for a OK click event before it
returns, with as result that Wscript.exe doesn't terminate.
Change you code to ...
process1.StartInfo.FileName = "C:\\WINDOWS\\system32\\cscript.exe";
Or better throws away this script and use the framework IO classes, they are
made for this.

Willy.

"Gerald" <ge*****@hotmail.com> wrote in message
news:uM**************@TK2MSFTNGP11.phx.gbl...
When I try to to fire wscript.exe, I can see it in the process viewer,

So my command line lookl like this:
C:\Windows\System32\wscript.exe D:\Mtpath\testfile.vbs Param1 param2
param3 ...

Wscript never closes (But I can kill it if I want) but the vbs file is
never called.
As the file that should be created never appears.

So, my vbs file is this:
========================
Option Explicit
dim oFSO:Set oFSO = wscript.CreateObject("scripting.filesystemobject")
dim oFile:set oFile =
oFSO.CreateTextFile("E:\\wwweb\\supportsoft.aumedi age.be\\Download\\eee.txt",
true)
oFile.writeline("Company = Hardcoded from file")
oFile.close
============================

my code in aspx.cs page is:
============================
System.Diagnostics.Process process1;
process1= new System.Diagnostics.Process();
process1.EnableRaisingEvents = false;
string strCmdLine = " /NoLogo E:\\wwwroot\\CREation2.vbs";
process1.StartInfo.FileName = "C:\\WINDOWS\\system32\\wscript.exe";
process1.StartInfo.Arguments = strCmdLine;
process1.StartInfo.UseShellExecute = false;
process1.StartInfo.RedirectStandardOutput = true;
process1.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process1.StartInfo.CreateNoWindow = true;
process1.Start();
process1.WaitForExit(8000);
if (process1.HasExited) {
SC_E.Text += "exited<br>";
SC_E.Text += "exit code: " + process1.ExitCode.ToString();
}
else {
process1.Kill();
SC_E.Text += "NO exit";
}
process1.Close();
==========================================

Thanks for your help.
It will be really appreciated.

Gerald
Why doesnt he get
"Willy Denoyette [MVP]" <wi*************@telenet.be> wrote in message
news:%2***************@TK2MSFTNGP12.phx.gbl...

"Gerald" <ge*****@hotmail.com> wrote in message
news:uw*************@tk2msftngp13.phx.gbl...
I have a set of vbs script that work for a long time.
At the moment, the only thing I do in my test is creating a file on the
server.
So nothing complicated. I just want to be able to run the script.
After that I will see if I can go further.

Alos, when I call wscript. I can see the process on process viewer, with
the right parameters, but it is not fired
Why?

Thank you.

Gerald


If you see the process in process explorer it means it is running right?
What do you mean with " it's not fired"? Please explain more precisely
what you expect.

Willy


Dec 9 '05 #7

This discussion thread is closed

Replies have been disabled for this discussion.