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) SCP Download/Upload Binary Files as Encoded StringsDemonstrates how to upload and download binary files as encoded strings (base64, hex, etc.) using the SCP protocol (Secure Copy Protocol over SSH).
load ./chilkat.dll # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set ssh [new_CkSsh] # Hostname may be an IP address or hostname: set hostname "www.some-ssh-server.com" set port 22 # Connect to an SSH server: set success [CkSsh_Connect $ssh $hostname $port] if {$success != 1} then { puts [CkSsh_lastErrorText $ssh] delete_CkSsh $ssh exit } # Wait a max of 5 seconds when reading responses.. CkSsh_put_IdleTimeoutMs $ssh 5000 # Authenticate using login/password: set success [CkSsh_AuthenticatePw $ssh "myLogin" "myPassword"] if {$success != 1} then { puts [CkSsh_lastErrorText $ssh] delete_CkSsh $ssh exit } # Once the SSH object is connected and authenticated, we use it # in our SCP object. set scp [new_CkScp] set success [CkScp_UseSsh $scp $ssh] if {$success != 1} then { puts [CkScp_lastErrorText $scp] delete_CkSsh $ssh delete_CkScp $scp exit } set remotePath "images/starfish.jpg" # Download the binary file and return as a base64 string. # See <a href="http://www.cknotes.com/chilkat-binary-encoding-list/">List of Encodings</a> for a list of possible encodings. set encodedJpg [CkScp_downloadBinaryEncoded $scp $remotePath "base64"] if {[CkScp_get_LastMethodSuccess $scp] != 1} then { puts [CkScp_lastErrorText $scp] delete_CkSsh $ssh delete_CkScp $scp exit } set remotePath "images/starfish2.jpg" # Now upload from the base64 string to the SSH server. # Insided the call to UploadBinaryEncoded, the base64 string is decoded, # and the decoded bytes are uploaded. The resulting starfish2.jpg on the # server will be identical to the original starfish.jpg set success [CkScp_UploadBinaryEncoded $scp $remotePath $encodedJpg "base64"] if {$success != 1} then { puts [CkScp_lastErrorText $scp] delete_CkSsh $ssh delete_CkScp $scp exit } puts "SCP download/upload binary encoded success." # Disconnect CkSsh_Disconnect $ssh delete_CkSsh $ssh delete_CkScp $scp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.