冬眠
“如果你觉得自己在为傻瓜设计产品,那么很可能不仅无法设计出优秀的产品,而且连傻瓜也不喜欢你的设计。”--Paul Graham

导航

 

启动外部进程的方法:

/// <summary>
/// 启动外部进程
/// </summary>
/// <param name="path">进程启动路径</param>
/// <param name="param">进程传入参数</param>
/// <returns>是否成功</returns>
public bool StartProcess(string path, string param)
{
    ProcessStartInfo startInfo = new ProcessStartInfo();
    startInfo.FileName = path;
    startInfo.Arguments = param;

    Process process = new Process();
    process.StartInfo = startInfo;

    #region 若需要启动退出事件     
   process.EnableRaisingEvents
= true; process.Exited += new EventHandler(process_Exited); #endregion return process.Start(); }

注意事项:

方法中的param,此处是string类型,而c#中Mian方法的参数是字符串数组(params string[] args),两者之间是如何转换的?

在通过Process将param传入时,param会被以空格分隔为字符串数组赋值给args。因此若需要传入带空格的字符串,则需要先将空格用其他符号替换,传入外部进程后,再将空格修复回来即可。

例如:

param = @“F:\test\test param”; //本意是传入一个文件夹路径

经过Process处理后,进入外部进程后,参数变为:

args = {"F:\\test\\test", "param"};

posted on 2013-08-08 20:15  无尽的冬眠  阅读(824)  评论(0编辑  收藏  举报