有人请告诉我如何授予 iis 用户对 cmd.exe 的权限并从服务器端代码运行命令。
我可以在本地主机上打开 cmd 并运行命令,但不能在网页上运行。记事本也一样
我已经写了 System.Diagnostics.Process.Start("cmd" ) 当我在本地主机中查看页面时,它会打开一个 cmd。
但不是在网页上......
我在 IIs admin Service 中勾选了允许与桌面交互并重新启动服务。
任何指导都会更合适
我在服务器上运行它。在服务器端脚本上,我使用 processStartInfo, Process 来启动 cmd.exe 并发送一些命令。这在本地工作(意味着如果我在本地主机上查看页面)但不在网页应用程序池标识设置为网络服务中。
那么如何授予 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();
}
}