最近做一個軟件集成的事情,有多個之前做的軟件,集成到一起自己用,使用了?
Process.Start(“*.exe”)的方式,然而遇到了傳遞參數的問題。
這里匯總后的程序叫main.exe,要匯總的軟件之一是pro1.exe;
引用:C#,Process.Start() 傳遞多參數問題。_百度知道
多個參數之間用空格即可!
多個參數之間用空格即可!
Process.Start("程序名","a b c d e")
Static void Main(String[] arg){
//傳進來自動變為String[] 類型!
// arg[0] == "a";
// arg[1]== "b";
}
以上思路是沒問題的,參數“a b c d”是寫死了常量,但是我現在是傳遞的變量。
直接寫入:
Process.Start(Pro1.exe,str1 str2)
str1和str2用空格隔開,無法啟動程序pro1.exe,隨后修改參數部分語法問題,得知關于參數傳遞的空格必須寫入,
正確參數輸入方式如下:
//string.Join(" ",str2),在參數str1 和str2之間強制加空格
Process.Start(Pro1.exe,$"\"{str1}\" {string.Join(" ",str2)}")