用DELPHI写的程序崩溃时,怎么能做到像QQ或者迅雷哪样弹出对话框,自动重启?多谢

解决方案 »

  1.   

    我这边是这样实现的,当启动监控的时候。启动监控代码
      if (n17.Caption='启动监控(&W)') then
      begin
        WinExec('EnginWatch.exe -i',SW_SHOWNORMAL);
        n17.Caption:='停止监控(&W)'
      end
      else
      begin
        WinExec('EnginWatch.exe -t',SW_SHOWNORMAL);
        n17.Caption:='启动监控(&W)'
      end;
    然后监控程序一直运行,当主程序退出,会发一个消息给监控程序,用socket通信,告诉它是否重新启动主程序
    然后WinExec
      

  2.   

    我这边是这样实现的,当启动监控的时候。启动监控程序
      if (n17.Caption='启动监控(&W)') then 
      begin 
        WinExec('EnginWatch.exe -i',SW_SHOWNORMAL); 
        n17.Caption:='停止监控(&W)' 
      end 
      else 
      begin 
        WinExec('EnginWatch.exe -t',SW_SHOWNORMAL); 
        n17.Caption:='启动监控(&W)' 
      end; 
    然后监控程序一直运行,当主程序退出,会发一个消息给监控程序,用socket通信,告诉它是否重新启动主程序 
    然后WinExec
     上面打错字了
      

  3.   

    kenshinggg:不行的,因为我有可能启动几个相同的程序,且我是要当应用程序异常崩溃时才这样做,正常退出时就不得新启动.