try{}
把你的代码括起来,然后在
catch(){}里面什么也不写
试试

解决方案 »

  1.   

    glcs(古老传说):
    这种方法让我很担心,在退出程序时容易出现出错提示
    还有没有其他办法?
      

  2.   

    alwssoan(巧克力):
    设公共变量不行,
    出现的问题好像是这样:
      当form3.Close需要一点时间,在没有完全执行完CLOSE的时候,执行Form2.Show就出错
      我在onClose中设变量没用,因为错误实在onClose事件之后
    能帮我试一下吗?只有这些分了
      

  3.   

    alwssoan(巧克力):
    设公共变量不行,
    出现的问题好像是这样:
      当form3.Close需要一点时间,在没有完全执行完CLOSE的时候,执行Form2.Show就出错
      我在onClose中设变量没用,因为错误实在onClose事件之后
    能帮我试一下吗?只有这些分了
      

  4.   

    isshowform 是一个共享资源,不具备线程安全,所以线程1和2要采用安全访问机制。
      

  5.   

    hieefxz(凡人邪真) :采用Synchronize也是不行的,不考虑主程序几乎不能操作的问题同样不形xieha(研志) :能具体一点吗?
      

  6.   

    可以啊,用synchronize是不行,因为它不是安全机制,它只是让子线程中的方法转到主线程中执行而已!
    例子:。
     var 
       Hmutex:Thandle;

    Tform1.formcreate(sender:object);
    begin
      
    createmutex(handle,false,null);

    end;

    thread1.execute;
    begin
    。。
     WaitForSingleObject(HMutex,1);  isShowingForm:=True;//  共享的资源代码;
     releasemutex(hmutex);
    end;thread2.execute;
    begin
    。。
     WaitForSingleObject(HMutex,1);//加琐  isShowingForm:=True;//  共享的资源代码;
     releasemutex(hmutex);//解琐
    end;有问题发信到hieefxz@163。net