如题,例如程序调用“abc.exe”文件后结束。这时的abc.exe文件要继续执行。这种Process p = Process.Start("abc.exe");方式达不到要求。

解决方案 »

  1.   

    using System.Diagnostics;
    Process ps=new Process();
    ps.StartInfo.FileName=@"E:\CSharp3\QXKMeTone\bin\Debug\cardtest.exe";
    ps.Start();
      

  2.   

    Process ps=new Process();
    ps.StartInfo.FileName=@"E:\wang\C#学习知识库\NSDN2003.exe";
    ps.Start();
    ps.Dispose ();
    Application.Exit ();
    测试通过
      

  3.   

    楼上的,我的意思是想找那种“exec”的方式执行,而不是这种进程的方法,不知道有没有?
      

  4.   

    Process.Start("abc.exe") + 线程(Thread)实现。
    新启动一个线程,此线程中启动abc.exe,然后主程序再退出。这样,能够保证abc.exe执行的同时,原程序关闭。
    这样是否是实现搂主的要求?
      

  5.   

    不是很清楚有没有
    如果有也只有API来实现
      

  6.   

    http://www.pinvoke.net/default.aspx/kernel32/CreateProcess.html事实上我觉得这样做的意义不大
      

  7.   

    找到了,就是shell的exec方式
    [DllImport("shell32.dll")]
      public  static  extern  int  ShellExecute(IntPtr  hwnd,StringBuilder  lpszOp,StringBuilder  lpszFile,StringBuilder  lpszParams,StringBuilder  lpszDir,int  FsShowCmd);   
    调用:
      ShellExecute(IntPtr.Zero,new  StringBuilder("Open"),new  StringBuilder("notepad"),new  StringBuilder(""),new  StringBuilder(@"C:"),1);  
    谢谢大家。
      

  8.   

    另外说一句,20011521()仁兄的Dispose()真是经典,令我大开眼界。不过可惜的是我这是工控项目,Dispose掉了下次再调用时会产生不良后果,不过这种思路实在佩服,再次感谢。