我的程序在运行时出现"程序没有响应"的情况,我想知道我如何在代码中知道,程序发生了没有响应的情况并采取措施重新启动程序.谢谢

解决方案 »

  1.   

    TO lincanwen:没有响应是有时出现的,我现在没有查出是什么原因,但我想先处理这个问题,就是说只要程序发生没有响应的情况,我就能监控到然后重新启动.
    TO bluemeteor:也正在考虑用多线程,我现在考虑的是程序启动时生成一个监控线程,监控线程里有一个时钟随时测试,当发生没有响应时,监控线程可以关闭当前程序再重新启动,但我不知道当程序都没有响应是,监控线程是否还是活动的.多线程我不熟,不知道有没有相应代码,多谢!
      

  2.   

    // 如何在程序启动时启动另外一个程序?
    可以通过ShellExecute,具体的查帮助。
      

  3.   

    使用shellexecute可以启动另外的一个程序
      

  4.   

    winexec(你要调用的应用程序',sw_shownormal);
      

  5.   

    看看使用API函数 TerminateProcess 来关闭没有响应的程序,
      

  6.   

    如果想在程序起动时起动别外一个程序可以用这样的办法。
    procedure TAboutBox.Label5Click(Sender: TObject);
    begin
         ShellExecute(handle,nil,pchar('mailto:[email protected]'),nil,nil,sw_shownormal);
    end;
      

  7.   

    to haerbin982(): 首先看一看你的程序有何问题,如果是一些操作失误而把系统资源耗尽的情况,应该修改过来.
    我好象遇到的就是你所说的这样,但是我不知道我的程序哪里出现问题,哪里什么耗费资源,而且我的程序在运行时,总是出现错误,有的甚至能导致死机,请帮我解决一下,好吗?