console下生成的 hello.exe 文件比如我有两个按钮   按钮A 和按钮B当我按下按钮A的时候 hello.exe 运行当我按下按钮B的时候 hello.exe 结束

解决方案 »

  1.   

    当然
    如果能把MFC工程和console合成一个工程那更加好谢谢 
      

  2.   

    最简单的是用WinExec或system,但这两种方式不能控件EXE的结束,
    用ShellExecuteEx的话可以得到EXE的进程句柄,可以关闭进程的函数关闭EXE。
      

  3.   

    保存一下hello.exe进程的句柄按下按钮A,调用windows api把hello.exe进程调起,并且保存hello.exe进程的句柄按下按钮B,调用另一个api通过句柄把进程关闭
      

  4.   

      
         谢谢
    //最好有一个判断是否该进程已经起来了,
             //   要是起来了 就 要屏蔽按钮的消息响应,否者 挂起的进程太多了
              CString str = "D:\\hello\\hello.exe";
    ::WinExec(str,NULL);        刚才试了下 确实 好使,
          请问 ShellExecuteEx
          具体该写些什么样的代码,
      

  5.   


    HINSTANCE hInstance = ShellExecute(NULL,   "open",   str,   NULL,   NULL,   0);我这样试了下 可以 启动,但是关闭句柄怎么弄呢
      

  6.   


    还有就是 按钮A 消息 做出反应后,保存hello.exe进程的句柄 通过什么方式  传递给 处理按钮B消息的函数谢谢
      

  7.   

    前面的几步 都OK了 我现在 还有最后一个问题 比如 我现在 有个进程的PID   号  设 为 PID_A那么 通过哪个函数关闭它
      

  8.   


    HANDLE hProcess  = OpenProcess( PROCESS_ALL_ACCESS, FALSE, dwProessId);
    if(NULL != hProcess)
    {
     TerminateProcess(hProcess, 0);
    }