2011-09-27 52 views
3

我有一个批处理脚本,它将图像的来源作为参数并输出修改后的图像。我可以将批处理放在服务器上并通过web服务调用它吗?通过网络服务调用批处理.net

+0

是的,有很多方法。你到目前为止尝试过什么,你有什么问题? –

+0

我正在寻找如何使用它的基本示例。我不知道从哪里开始 – Ryan

回答

3

为了让你开始,这里是一些信息和指针,以不同的选择。尝试一下,看看哪一个能更好地解决你的需求并为你工作。

最简单的,只是调用的Process.Start()传递完整文件规范批处理文件

Process.Start("c:\bats\test.bat") 

如果您需要更多的控制,您可以创建一个Process.StartInfo并把它传递到的Process.Start方法。我没有测试过这个代码。

Process p= new Process(); 
p.StartInfo.WorkingDirectory = "C:\temp"; 
p.StartInfo.FileName = "c:\bats\test.bat"; 
p.StartInfo.Arguments = "arguments"; 
p.StartInfo.CreateNoWindow = false; 
p.Start(); 
p.WaitForExit(); 

更复杂一点的方式是运行CMD并向其发送命令。看到这篇文章http://codebetter.com/brendantompkins/2004/05/13/run-a-bat-file-from-asp-net/ 但是,这是一个非常粗暴和强大的批处理执行,可能不适用于所有BAT文件(例如那些具有%%变量的FOR命令)并且有一些副作用。

+0

谢谢,但是我想问一下如何使用像test.bat -n 5 – Ryan

+0

这样的参数来调用,将示例中的“参数”更改为“-n 5” –