请告诉我如何将iis用户的权限授予cmd.exe并从服务器端代码运行命令。
我可以在本地主机上打开cmd并运行命令,但不能在网页上运行。同样适用于记事本
我已经编写了System.Diagnostics.Process.Start(“cmd”),当我在本地主机中查看页面时,这会打开一个cmd。
但不在网页上.....
我已勾选允许在IIs管理服务中与桌面交互并重启服务。
任何指导都会更加贴切
我在服务器上运行它。在serverside脚本上,我使用processStartInfo,Process来启动cmd.exe并发送一些命令。这个工作在localy(意思是如果我在localhost上查看页面)但不在网页应用程序池标识设置为网络服务。
那么如何授予newtwork服务权限以运行cmd.exe并读取输出?
这是我执行cmd及其在本地工作的代码,但不是。
private void createCHM()
{
//Generate CHM File
using (Process p = new Process())
{
//Open the created hhp project compiled file
p.StartInfo = new ProcessStartInfo("cmd", "/k \"\"" + CHMPath + "\"" + " \"" + hhpPath + "\\Contents\\" + random + ".hhp\"\"");
//the System shell will not be used to control the process instead program will handle the process and required to redirect result
p.StartInfo.UseShellExecute = false;
p.StartInfo.ErrorDialog = true;
p.StartInfo.CreateNoWindow = true; //make the the cmd window not visible : set to true
p.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; //make the cmd work behind the program : set to Hidden
//redirect all the standard input and output to program
p.StartInfo.RedirectStandardError = true;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.Start();
}
}