C#中怎么用process调用一个exe文件并传入参数?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#中怎么用process调用一个exe文件并传入参数?相关的知识,希望对你有一定的参考价值。

一个exe文件比如说是aaa.exe 这个是由一个控制台应用程序编译而成 aaa.exe需要2个参数(即main函数中的args)
我现在想在C#中 调用这个aaa.exe 并且传入2个参数 具体代码应该怎么写? 是用Process么?
如果要传入的参数中 有空格 怎么办。。。。。。

System.Diagnostics.Process.Start("程序的路径", "参数1 参数2");
第一个参数是aaa.exe 的路径,第二个参数是用空格分开的两个参数组成的字符串。
aaa.exe中的main方法写做
static void Main(string[] args)
用Process.Start启动aaa.exe时main方法的args参数就是Process.Start传入参数用转换成的长度为2的数组
参考技术A Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.StandardInput.WriteLine("ping -n 2 123.125.114.131");
p.StandardInput.WriteLine("exit");
这是调用cmd.exe来执行CMD命令的,你看看能不能对你有用
参考技术B System.Diagnostics.ProcessStartInfo myStartInfo = new System.Diagnostics.ProcessStartInfo();
myStartInfo.FileName = "C:\\test.exe";
System.Diagnostics.Process myProcess = new System.Diagnostics.Process();
myProcess.StartInfo = myStartInfo;
myProcess.Start();
myProcess.WaitForExit(); //等待程序退出
参考技术C C#中怎么用process调用一个exe文件并传入参数?

System.Diagnostics.Process.Start("程序的路径", "参数1 参数2");
第一个参数是aaa.exe 的路径,第二个参数是用空格分开的两个参数组成的字符串。
aaa.exe中的main方法写做
static void Main(string[] args)
用Process.Start启动aaa.exe时main方法的args参数就是Process.Start传入参数用转换成的长度为2的数组

代码如下 调exe的写法:
static void Main(string[] args)

System.Diagnostics.Process.Start(@"E:\SouceCode\WindowsFormsApplication1 - 副本\WindowsFormsApplication1\bin\Debug\WindowsFormsApplication1.exe", "参数1 参数2");


被调的写法:

static void Main(string[] args)

if (args.Length > 0)

string canshu1 = args[0];
string canshu2 = args[1];
MessageBox.Show(canshu1);
MessageBox.Show(canshu2);

Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
参考技术D aaa.exe 参数1 参数2

以上是关于C#中怎么用process调用一个exe文件并传入参数?的主要内容,如果未能解决你的问题,请参考以下文章

c#怎么调用cmd的命令呀?或者说怎么向cmd中写入命令?

如何在 C# 中调用 .exe 文件 [重复]

C#使用Process类调用外部程序(转)

process.start启动exe,程序中会调用配置文件的路径是相对路径,产生启动错误,怎么办?

C#调用Exe程序示例

c#窗体中怎么实现用按扭打开一个网页?