当前位置: 代码迷 >> C# >> 怎么为一个程序添加启动参数
  详细解决方案

怎么为一个程序添加启动参数

热度:369   发布时间:2016-05-05 05:08:54.0
【求助】如何为一个程序添加启动参数
本帖最后由 u010813287 于 2015-01-09 15:45:52 编辑
问题背景:
我想要通过一个button_click打开一个.exe,这个.exe文件需要一些参数才能运行,使用Process.Start有没有可能完成?
我该怎么完成?

一般的打开方式是运行在这个.exe的目录下一个.bat文件,内容如下:
Client.exe -s 192.1.1.1 -p 1234 -u username -v 1.0.1

目前使用的方法是这样的:
1.通过File.WriteAllText生成一个.bat
2.调用.bat


------解决思路----------------------
Process p = new Process
{
    StartInfo =
    {
        FileName = @"C:\Windows\System32\ping.exe", 
        Arguments = "127.0.0.1"
    }
};
p.Start();

------解决思路----------------------
方法很多
1.像1楼那样Process直接传递参数
2.调用命令行(cmd指令)打开文件并传递参数
3.调用bat文件
------解决思路----------------------
可以这样实现:(以下是调用两个参数的exe使用方法)我就是通过这种方法来调用beyondcomy的
                string addr1 = “S:\TEST\TEST1.TXT”;
                string addr2 = “S:\TEST\TEST2.TXT”;
                Process p = new Process();
                p.StartInfo.FileName = @"D:\Program Files (x86)\TEST\TEST.exe";
                p.StartInfo.Arguments = "\"" + addr1 + "\"" + " \"" + addr2 + "\"";
                p.Start();

------解决思路----------------------
等启动完了就不是启动参数了,而是进程间通讯,有点复杂了两边都要处理,一边发送,一边接收,通讯技术有许多:
有共享内存,UDP/TCP套接字,WINDOWS消息,命名管道等
  相关解决方案