C# 使用Process调用外部程序中所遇到的参数问题

C# 使用Process调用外部程序中所遇到的参数问题

在使用Process.Start 调用外部程序时,除了程序的地址之外,是可以传递参数的,Process.Start 也有多个重载;

 View Code

其中的arguments 参数, 是有个空格的问题的, 在外部程序接收参数的 (Winform) 是用过Main(string[] args) 。 其中args是数组 , 在StartInfo.Arguments中的参数的间隔是根据空格进行分断的。 所以如果在传递的参数中是空格的,就需要 在  参数前后追加 “\"”  即:

复制代码

1     string argument1 = "\"" + argv1 + "\"";  
2     string argument2 = "\"" + argv2 + "\"";  
3     Process process = new Process();  
4     process.StartInfo.FileName = System.Environment.CurrentDirectory + "//test.exe";  
5     process.StartInfo.Arguments = argument1 + " " + argument2;  
6     process.StartInfo.UseShellExecute = true; ;  
7     //启动  
8     process.Start();  

复制代码

ok, 这样就能解决Process 传递参数的有空格的问题了。

猜你喜欢

转载自blog.csdn.net/qq_24127015/article/details/86080672