我用delphi写了一个程序,打开另一个应用程序,怎样知道那个程序关闭了,我的程序也跟着关闭啊

解决方案 »

  1.   

    这个问题我遇见过,由于时间急我用了一个文件开关参数:
       *.txt中的"0",在被调用程序结束时变成"1";在调用程序中不停的检测这个值;
    很笨的方法,但有效果;
    如果有好的办法通知哦!!!!!!!
      

  2.   

    你CreateProcess 的时候,最后一个参数lpProcessInformation 是一个PROCESS_INFORMATION 结构。其中的dwProcessId 就是你建立起来的进程的ID。然后HANDLE hProc = OpenProcess(SYNCHRONIZE,false,dwProcessId);这个dwProcessId 就是刚才我提到那个进程ID。最后,建立一个线程来WaitForSingleObject(hProc, TIME_OUT);TIME_OUT就是等待超时,假如你输入INFINITE ,线程就无限等待。假如等到了,就给主窗口发消息,叫程序退出。这里开了n 多的HANDLE ,用完了记得close 掉哦^_^