使用进程类执行带参数的exe的net应用程序。我的问题是它运行了好几天,但现在我不能用参数-.-
执行这个exe如果我尝试使用终端而不是工作,但是如果我使用C#代码而不是我得到一条消息,我不能创建该文件。
*** ERROR *** Cannot create qrun.inf file
这是我的c#代码:
string cmd = Server.MapPath(@"~/exe/lstc_qrun.exe -s server01 -R");
string output = ExecuteCommand(cmd);
//Output = "*** ERROR *** Cannot create qrun.inf file"
这是ExecuteCommand方法:
public static string ExecuteCommand(string command)
{
int exitCode;
ProcessStartInfo processInfo;
Process process;
try
{
processInfo = new ProcessStartInfo("cmd.exe", "/c " + command);
processInfo.CreateNoWindow = true;
processInfo.UseShellExecute = false;
processInfo.RedirectStandardError = true;
processInfo.RedirectStandardOutput = true;
using (process = Process.Start(processInfo))
{
string output = process.StandardOutput.ReadToEnd();
exitCode = process.ExitCode;
return output;
}
}
catch (Exception ex)
{
return "error: " + ex.Message;
}
}
我该怎么办..我在我的本地机器上工作:(
答案 0 :(得分:1)
检查Process.Start()的this引用:
public static Process Start(
string fileName,
string arguments,
string userName,
SecureString password,
string domain
)
或者您可以填写ProcessStartInfo成员:
processInfo.Username = 'Username' ;
processInfo.Password = 'Password' ;
processInfo.Domain = 'MyDomain' ;