Delphi ActiveX
Delphi ActiveX
Send BinData Contents over a Socket
See more Socket/SSL/TLS Examples
Demonstrates Socket.SendBd, which sends bytes from a BinData beginning at an offset. A numBytes of 0 sends from the offset through the end of the data.
Background. The BinData receive methods accumulate raw bytes in a BinData object. A single receive returns only what is currently available, whereas the counted receive waits for an exact number of bytes.
Chilkat Delphi ActiveX Downloads
var
success: Integer;
socket: TChilkatSocket;
bTls: Integer;
maxWaitMs: Integer;
bd: TChilkatBinData;
begin
success := 0;
socket := TChilkatSocket.Create(Self);
// Connect to the server using TLS.
bTls := 1;
maxWaitMs := 5000;
success := socket.Connect('example.com',5000,bTls,maxWaitMs);
if (success = 0) then
begin
Memo1.Lines.Add(socket.LastErrorText);
Exit;
end;
// Place some bytes into a BinData to be sent.
bd := TChilkatBinData.Create(Self);
bd.AppendString('message payload','utf-8');
// Send bytes from the BinData starting at the given offset. A numBytes of 0 sends from the offset
// through the end of the data.
success := socket.SendBd(bd.ControlInterface,0,0);
if (success = 0) then
begin
Memo1.Lines.Add(socket.LastErrorText);
Exit;
end;
Memo1.Lines.Add('Sent ' + IntToStr(bd.NumBytes) + ' bytes.');