{$IFDEF VER100}
function  TDXSockClient.SendFromWindowsFile(var Handle:Integer):boolean;
{$ELSE}
function  TDXSockClient.SendFrom(var Handle:Integer):boolean;
{$ENDIF}
Begin
   If Assigned(feSendingData) then Begin
//      feSendingData(fsHost,Stream.Size);
      ProcessWindowsMessageQueue;
   End;
   Result:=Socket.
       {$IFDEF VER100} SendFromWindowsFile( {$ELSE} SendFrom( {$ENDIF}
       Handle);
   If Assigned(feSendingDone) then Begin
//      feSendingDone(fsHost,Stream.Position);
      ProcessWindowsMessageQueue;
   End;
   fNotifiedOfData:=False;
End;//*****************************************************************************
// SENDFROMBORLANDFILE: Send the Borland File handle to the socket until end of
// file
//*****************************************************************************
{$IFDEF VER100}
function  TDXSockClient.SendFromBorlandFile(var Handle:File):boolean;
{$ELSE}
function  TDXSockClient.SendFrom(var Handle:File):boolean;
{$ENDIF}
Begin
   If Assigned(feSendingData) then Begin
//      feSendingData(fsHost,Stream.Size);
      ProcessWindowsMessageQueue;
   End;
   Result:=Socket.
       {$IFDEF VER100} SendFromBorlandFile( {$ELSE} SendFrom( {$ENDIF}
       Handle);
   If Assigned(feSendingDone) then Begin
//      feSendingDone(fsHost,Stream.Position);
      ProcessWindowsMessageQueue;
   End;
   fNotifiedOfData:=False;
End;{$IFDEF VER100}
function  TDXSockClient.SaveToStream(Stream:TStream;Timeout:Integer):Boolean;
{$ELSE}
function  TDXSockClient.SaveTo(Stream:TStream;Timeout:Integer):Boolean;
{$ENDIF}
Begin
   Result:=Socket.
       {$IFDEF VER100} SaveToStream( {$ELSE} SaveTo( {$ENDIF}
       Stream,Timeout);
   fNotifiedOfData:=False;
End;{$IFDEF VER100}
function  TDXSockClient.SaveToWindowsFile(var Handle:Integer;Timeout:Integer):boolean;
{$ELSE}
function  TDXSockClient.SaveTo(var Handle:Integer;Timeout:Integer):boolean;
{$ENDIF}
Begin
   Result:=Socket.
       {$IFDEF VER100} SaveToWindowsFile( {$ELSE} SaveTo( {$ENDIF}
       Handle,Timeout);
   fNotifiedOfData:=False;
End;{$IFDEF VER100}
function  TDXSockClient.SaveToBorlandFile(var Handle:File;Timeout:Integer):boolean;
{$ELSE}
function  TDXSockClient.SaveTo(var Handle:File;Timeout:Integer):boolean;
{$ENDIF}
Begin
   Result:=Socket.
       {$IFDEF VER100} SaveToBorlandFile( {$ELSE} SaveTo( {$ENDIF}
       Handle,Timeout);
   fNotifiedOfData:=False;
End;function TDXSockClient.PeekString:String;
begin
   Result:=Socket.PeekString;
end;function TDXSockClient.PeekChar:Char;
begin
   Result:=Socket.PeekChar;
end;procedure TDXSockClient.Disconnect;
begin
 if Not IsValidSocket then Exit;
 If Assigned(feDisconnected) then
 Begin
feDisconnected(fsHost);
ProcessWindowsMessageQueue;
 End;
 Socket.CloseGracefully;
   if FDXClientThread<>nil then
 begin
 FDXClientThread:=nil;
 end;
end;function  TDXSockClient.IsValidSocket:Boolean;
Begin
   If Assigned(Socket) then Result:=Socket.ValidSocket
   Else Result:=False;
End;function TDXSockClient.IsConnected:Boolean;
begin
   If Assigned(Socket) then Result:=Socket.Connected
   Else Result:=False;
end;function TDXSockClient.IsReadable:Boolean;
begin
   If Assigned(Socket) then Result:=Socket.Readable
   Else Result:=False;
end;