如何用我的用户在C#中使用参数执行exe文件?

时间:2014-05-27 09:48:31

标签: c# asp.net windows process exe

使用进程类执行带参数的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;
            }

        }

我该怎么办..我在我的本地机器上工作:(

1 个答案:

答案 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' ;