我需要运行一个使用 Process 类从 cmd 窗口运行的旧版应用程序。
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/C \"C:\\MySys\\My2Com.exe –r " + Parameters.FullPath;
startInfo.CreateNoWindow = true;
startInfo.UseShellExecute = false;
try
{
// Start the process with the info we specified.
// Call WaitForExit and then the using statement will close.
using (Process exeProcess = Process.Start(startInfo))
{
exeProcess.WaitForExit();
}
}
catch (Exception e)
{
string sMsg = "Error copying the files to " + Parameters.FullPath + ".";
HandleErrorMsg(e, sMsg);
return;
}
My2Com.exe 进程应该在后台运行,但是,我始终收到一条消息,即在从具有不同标志的 cmd 行运行时使用的文件丢失。如果我按照 cmd 窗口中的指示运行命令 C:\MySys\My2Com.exe –r FullyQualPath,它会按预期工作。我尝试了几种不同的方法来设置 Process 类,但均未成功。
任何建议,将不胜感激。
谢谢你。