我在通过“进程”类mvc4
调用 .exe 文件中有一个 API。
此 .exe 使用log4net,并运行另一个将文件导出到目录和子目录的 .exe。在进程结束时,.exe 发布到 http API。
Process p = new Process();
p.StartInfo.FileName = ConfigurationManager.AppSettings["ExtractToolPath"];
p.StartInfo.Arguments = this.strcommand;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.UseShellExecute = false;
p.StartInfo.Verb = "runas";
p.StartInfo.RedirectStandardInput = true;
p.Start();
string s = p.StandardOutput.ReadToEnd();
p.WaitForExit();
字符串's'
以“”(空白字符串)返回。
s
参数获取打印到控制台窗口的内容。我在 .exe 的开头做了一个打印,因此我知道它甚至没有启动这个过程。
重要提示:当我删除 log4net 记录器时,'s'
参数会得到一些输出,但是当尝试执行任何需要写权限的命令时它会失败。
我试图授予 IIS 可执行权限,并使用管理员用户名和密码进行模拟。我把我的目录“分享”给每个人。没有任何帮助。