我试图编写一个网页,其中iam从代码中调用第三方应用程序(.exe) 使用
System.Diagnostics.Process.Start("app.exe")
应用程序触发并开始打开GUI但在大约3-4秒后“卡住”并且只是坐在那里..它不是应用程序问题,因为它通过本地管理员帐户运行它运行正常网络服务器。我还尝试使用
通过管理员帐户调用此应用程序Start(
string fileName,
string userName,
SecureString password,
string domain)
但这并没有帮助。任何帮助表示赞赏。
答案 0 :(得分:0)
最好在运行之前设置一些初始化,而不是使用不适用于Web的默认设置运行它,所以请尝试以下代码:
Process compiler = new Process();
// Make sure that the application.exe can be found
compiler.StartInfo.FileName = "c:\\app.exe";
compiler.StartInfo.StandardOutputEncoding = System.Text.Encoding.UTF8;
compiler.StartInfo.UseShellExecute = false;
compiler.StartInfo.CreateNoWindow = false;
compiler.StartInfo.RedirectStandardError = true;
compiler.StartInfo.RedirectStandardOutput = true;
compiler.StartInfo.RedirectStandardInput = true;
// here I run it
compiler.Start();
compiler.StandardInput.Flush();
compiler.StandardInput.Close();
// here I get the output
string cReadOutput = compiler.StandardOutput.ReadToEnd();
compiler.WaitForExit();
compiler.Close();