我用IDHTTP向指定的URL发送一个字符串或文件,我如何知道它在60秒内,是发送成功或是没有成功呢?????       try
          HTTP.Post('http://11.160.4.118/ERP/ERPMain',Source,Response);
       except
       end;
       showmessage(Response.DataString);
       Response.Position :=0;
       ResultSource.CopyFrom(Response,Response.Size);

解决方案 »

  1.   

    超時値在IdHTTP1控件的属性「ReadTimeout」中設定
      

  2.   

    Indicates the milliseconds to wait for a readable connection.property ReadTimeout: Integer;DescriptionReadTimeout is an Integer property that indicates the number of milliseconds that the connection should wait for the peer connection to become readable using the protocol stack.ReadTimeout is used in ReadFromStack.
      

  3.   

    cronuz(cronus) :
     
       IdHTTP1控件 好象没有这个ReadTimeout属性啊?????  我用的是DELPHI6
      

  4.   

    若真的没有、在此↓下載Indy9、会有「ReadTimeout」属性。
    http://www.indyproject.org/download/Files/Indy9.html
      

  5.   

    cronuz(cronus) 大哥:  这个属性具体怎么用啊  是在我POST文件之前,还是之后啊  这是我的代码,我应该家在那,判断它连接了60秒,还没有成功,则断开????       try
            HTTP.Post('http://11.160.4.118/ERP/ERPMain',Source,Response);
           except
           end;
      

  6.   

    静態設定、在IdHTTP1控件的属性表中直接写「ReadTimeout=3000」
      

  7.   

    cronuz(cronus):大哥
      
      静态就没有这个属性,更何况我是在DLL中动态创建IDHTTP控件来发送文件的
      如何设啊????????
      

  8.   

    cronuz(cronus) 谢谢大哥,我试试吧
      

  9.   

    cronuz(cronus):大哥,是不是我在创建是,设定了连接时间它在POST文件时,如果在指定的时间还没有把文件发送的指定的位置,
    是否就自动断开啊???????  是这样写吗???
      HTTP.ReadTimeout=3000;
      try
        HTTP.Post('http://11.160.4.118/ERP/ERPMain',Source,Response);
      except
      end;