Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual FoxPro) Socket Send and Receive BinDataDemonstrates the Chilkat Socket ReceiveBdN and SendBd methods.
LOCAL loSock LOCAL lnUseTls LOCAL lnPort LOCAL lnMaxWaitMs LOCAL lnSuccess LOCAL loBdToSend LOCAL i LOCAL lnByteVal LOCAL loBdRecv * This example requires the Chilkat API to have been previously unlocked. * See Global Unlock Sample for sample code. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.Socket') loSock = CreateObject('Chilkat.Socket') * -------------------------------------------------------------------- * This example uses the public TCP echo service at https://tcpbin.com/ * -------------------------------------------------------------------- lnUseTls = 0 lnPort = 4242 lnMaxWaitMs = 5000 lnSuccess = loSock.Connect("tcpbin.com",lnPort,lnUseTls,lnMaxWaitMs) IF (lnSuccess = 0) THEN ? loSock.LastErrorText RELEASE loSock CANCEL ENDIF * Wait a max of 2 seconds for a response.. loSock.MaxReadIdleMs = 2000 * Send 26 bytes contained in a Chilkat BinData * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.BinData') loBdToSend = CreateObject('Chilkat.BinData') i = 0 lnByteVal = 65 DO WHILE i < 26 loBdToSend.AppendByte(lnByteVal) lnByteVal = lnByteVal + 1 i = i + 1 ENDDO * Send the contents of the BinData * Pass zero's in the 2nd and 3rd arguments to send the entire contents of the BinData. loSock.SendBd(loBdToSend,0,0) * The tcpbin.com echo server only echoes after receiving an LF (linefeed char) loSock.SendByte(10) * The echo server will echo back whatever is sent to it. * We should be able to read the same bytes back.. * For versions of Chilkat < 10.0.0, use CreateObject('Chilkat_9_5_0.BinData') loBdRecv = CreateObject('Chilkat.BinData') * Receive the 26 bytes previously sent, plus the LF char. lnSuccess = loSock.ReceiveBdN(27,loBdRecv) IF (lnSuccess = 0) THEN ? loSock.LastErrorText RELEASE loSock RELEASE loBdToSend RELEASE loBdRecv CANCEL ENDIF * Show the contents of bdRecv in hex format ? loBdRecv.GetEncoded("hex") * Output: 4142434445464748494A4B4C4D4E4F505152535455565758595A0A RELEASE loSock RELEASE loBdToSend RELEASE loBdRecv |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.