我用delphi6编译了一个工具,工具中生成一批处理文件。
在调用winexec后,批处理文件的执行和这个工具是异步的,如何才能同步。
我如何才能在批处理文件开始执行时,让工具Enable:=False,而在批处理执行结束后工具Enable:=True
望大家不吝赐教,谢谢!

解决方案 »

  1.   

    DWORD WaitForSingleObject(
        HANDLE hHandle, // handle of object to wait for 
        DWORD dwMilliseconds  // time-out interval in milliseconds  
       );
     
      

  2.   

    用shellapi函数和WaitForSingleObject你可以查看delphi自带的windows sdk或者msdn
      

  3.   

    楼上的,人家是批处理文件,你那些没有用。可以判断DOS窗口是否存在。
      

  4.   

    但是DOS批处理中执行的时间并不能确定
    在选取判断的时间上可能要讲究
    如果用你说的判断方法取最长时间 有可能导致工具短时间的Sleep
      

  5.   

    OK,问题解决了。
    使用createprocess和waitforsingle