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
(Tcl) Socket Send and Receive BinDataDemonstrates the Chilkat Socket ReceiveBdN and SendBd methods.
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set sock [new_CkSocket] # -------------------------------------------------------------------- # This example uses the public TCP echo service at https://tcpbin.com/ # -------------------------------------------------------------------- set useTls 0 set port 4242 set maxWaitMs 5000 set success [CkSocket_Connect $sock "tcpbin.com" $port $useTls $maxWaitMs] if {$success == 0} then { puts [CkSocket_lastErrorText $sock] delete_CkSocket $sock exit } # Wait a max of 2 seconds for a response.. CkSocket_put_MaxReadIdleMs $sock 2000 # Send 26 bytes contained in a Chilkat BinData set bdToSend [new_CkBinData] set i 0 set byteVal 65 while {$i < 26} { CkBinData_AppendByte $bdToSend $byteVal set byteVal [expr $byteVal + 1] set i [expr $i + 1] } # Send the contents of the BinData # Pass zero's in the 2nd and 3rd arguments to send the entire contents of the BinData. CkSocket_SendBd $sock $bdToSend 0 0 # The tcpbin.com echo server only echoes after receiving an LF (linefeed char) CkSocket_SendByte $sock 10 # The echo server will echo back whatever is sent to it. # We should be able to read the same bytes back.. set bdRecv [new_CkBinData] # Receive the 26 bytes previously sent, plus the LF char. set success [CkSocket_ReceiveBdN $sock 27 $bdRecv] if {$success == 0} then { puts [CkSocket_lastErrorText $sock] delete_CkSocket $sock delete_CkBinData $bdToSend delete_CkBinData $bdRecv exit } # Show the contents of bdRecv in hex format puts [CkBinData_getEncoded $bdRecv hex] # Output: 4142434445464748494A4B4C4D4E4F505152535455565758595A0A delete_CkSocket $sock delete_CkBinData $bdToSend delete_CkBinData $bdRecv |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.