Board index » delphi » Problem with TIdFtp component and SendBufferSize

Problem with TIdFtp component and SendBufferSize

Hi everyone,

I originally posted this in the 3rd party tools newsgroup and then stumbled
across this group.  My apologies for the cross post but this newsgroup is
clearly the more appropriate one.

Has anyone encountered a problem with Indy v8.0 (Winshoes 8) where the
upload size is not set properly.  What I have noticed is that no matter what
value you give the IdFTP.SendBufferSize, the default value ALWAYS overwrites
the value you give it.  This causes some problems because the default is
32,768 bytes and this causes the GUI to be VERY sluggish.  Giving the value
of 1,024 bytes changes nothing because the default value overwrites this.
Looking at the way the properties are set I noticed some differences between
the way the Send and Receive buffer sizes are set.

Any and all ideas are welcome (including workarounds :)

Thanks to all for your time.

Sincerely,

Gordon Cutts

 

Re:Problem with TIdFtp component and SendBufferSize


Yes the Internal Put function in TidFTP.pas (INDY 8.00) ignores the
sendBuffersize.  The fix is to add the line

SendBufferSize := self.SendBufferSize;

into the TIdFTP.InternalPut source in two places....

begin
  if FPassive then begin
 SendPassive(LIP, LPort);
 WriteLn(ACommand);
 FDataChannel := TIdTCPClient.Create(nil);
 with TIdTCPClient(FDataChannel) do try
**    SendBufferSize := self.SendBufferSize; {Fix by ASW 27/02/01}
        SetDataChannelWorkEvents;
        Host := LIP;

and

end else begin
   FDataChannel := TIdSimpleServer.Create(nil); try
      with TIdSimpleServer(FDataChannel) do begin
**       SendBufferSize := self.SendBufferSize; {Fix by ASW 27/02/01}
           SetDataChannelWorkEvents;
           BoundIP := Self.Binding.IP;

Quote
"Gordon Cutts" <[email protected]> wrote in message

news:[email protected]

Quote
> Hi everyone,
> Has anyone encountered a problem with Indy v8.0 (Winshoes 8) where the
> upload size is not set properly.  What I have noticed is that no matter
what
> value you give the IdFTP.SendBufferSize, the default value ALWAYS
overwrites
> the value you give it.  This causes some problems because the default is
> 32,768 bytes and this causes the GUI to be VERY sluggish.  Giving the
value
> of 1,024 bytes changes nothing because the default value overwrites this.
> Looking at the way the properties are set I noticed some differences
between
> the way the Send and Receive buffer sizes are set.

Other Threads