服务器端命令行
问题描述:
我想知道是否可以通过mvc web应用程序在服务器上运行命令行功能。服务器端命令行
澄清自己:
用户通过mvc web应用程序将一些文件上传到服务器。然后他/她按下按钮 ,服务器运行命令行应用程序。
这可能吗?
预先感谢您
注:该服务器是Windows 2008的
答
是。假设您有一个不需要用户交互的命令行应用程序(即您拥有控制台应用程序),则可以在控制器方法中尝试以下操作。
Process serverSideProcess = new Process();
serverSideProcess.StartInfo.FileName = @"C:\pathToTheExe";
serverSideProcess.StartInfo.Arguments = "arg1 arg2 arg3";
serverSideProcess.EnableRaisingEvents = true;
serverSideProcess.StartInfo.UseShellExecute = true;
serverSideProcess.Start();
有一点需要注意将执行此过程的用户帐户的标识。默认情况下,这应该使用AppPool的凭证执行服务器端。如果您需要访问网络资源,这可能是一个问题。简单地解决这个问题的一种方法是让AppPool在已被授权访问这些资源的用户帐户下运行。
感谢您的可能的答案 – Cobalt 2011-04-29 10:35:58
我有完全一样的要求。谢谢。 – 2013-07-23 03:05:05