在 winforms 中使用 cmd 执行带有参数的 exe 文件
本文关键字:参数 exe 文件 行带 执行 winforms cmd | 更新日期: 2023-09-27 18:34:24
我正在开发一个Windows应用程序。我正在调用命令提示符,我需要调用exe文件采取参数的exe文件。
我能够打开命令提示符,但无法发送参数
string strCmdText = "create-keyfile.exe ..''KatanaFirmware''key-template.txt ..''Keyfiles''new-keyfile.txt " + cableTextBox.Text.Trim()+" " + startIdTextBox.Text.Trim();
System.Diagnostics.Process.Start("CMD.exe", strCmdText);
可以帮帮我。
谢谢
普尼斯
System.Diagnostics.ProcessStartInfo startInfo = new ProcessStartInfo("create-keyfile.exe");
startInfo.Arguments = "..''KatanaFirmware''key-template.txt ..''Keyfiles''new-keyfile.txt " + cableTextBox.Text.Trim()+" " + startIdTextBox.Text.Trim();
System.Diagnostics.Process.Start(startInfo);
您还可以在Process.Start上查看MSDN站点,其中包含有关如何执行.exe并将参数传递给它的示例。
ProcessStartInfo process = new ProcessStartInfo();
process.FileName = "yourprogram.exe";
process.Arguments = strCmdText; // or put your arguments here rather than the string
Process.Start(process);
你试过吗
System.Diagnostics.Process.Start("CMD.exe "+strCmdText);
实际上,在进一步检查时,我认为您无需致电CMD.EXE您应该调用exe文件,除非您当然使用CMD来显示某些内容
string strCmdText = "..''KatanaFirmware''key-template.txt ..''Keyfiles''new-keyfile.txt " + cableTextBox.Text.Trim()+" " + startIdTextBox.Text.Trim();
System.Diagnostics.Process.Start("create-keyfile.exe", strCmdText);
您是否尝试过使用/k 或/c 选项的 cmd
从链接
/c :执行字符串指定的命令,然后停止。
/k :执行字符串指定的命令并继续。
string strCmdText = "/k create-keyfile.exe ..''KatanaFirmware''key-template.txt ..''Keyfiles''new-keyfile.txt " + cableTextBox.Text.Trim()+" " + startIdTextBox.Text.Trim();
System.Diagnostics.Process.Start("CMD.exe", strCmdText);
试试这个。
string strCmdText = "KatanaFirmware''key-template.txt "+ "''Keyfiles''new-keyfile.txt " + cableTextBox.Text.Trim()+" " + startIdTextBox.Text.Trim();
Process mp = new Process();
mp.StartInfo.FileName = "E:''create-keyfile.exe"; //path of the exe that you want to run
mp.StartInfo.UseShellExecute = false;
mp.StartInfo.CreateNoWindow = true;
mp.StartInfo.RedirectStandardInput = true;
mp.StartInfo.RedirectStandardOutput = true;
mp.StartInfo.Arguments = strCmdText;
mp.Start();
mp.WaitForExit();
希望对您有所帮助。