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
(PowerBuilder) 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).
integer li_rc oleobject loo_Ssh string ls_Hostname integer li_Port integer li_Success oleobject loo_Scp string ls_RemotePath string ls_EncodedJpg // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Ssh = create oleobject // Use "Chilkat_9_5_0.Ssh" for versions of Chilkat < 10.0.0 li_rc = loo_Ssh.ConnectToNewObject("Chilkat.Ssh") if li_rc < 0 then destroy loo_Ssh MessageBox("Error","Connecting to COM object failed") return end if // Hostname may be an IP address or hostname: ls_Hostname = "www.some-ssh-server.com" li_Port = 22 // Connect to an SSH server: li_Success = loo_Ssh.Connect(ls_Hostname,li_Port) if li_Success <> 1 then Write-Debug loo_Ssh.LastErrorText destroy loo_Ssh return end if // Wait a max of 5 seconds when reading responses.. loo_Ssh.IdleTimeoutMs = 5000 // Authenticate using login/password: li_Success = loo_Ssh.AuthenticatePw("myLogin","myPassword") if li_Success <> 1 then Write-Debug loo_Ssh.LastErrorText destroy loo_Ssh return end if // Once the SSH object is connected and authenticated, we use it // in our SCP object. loo_Scp = create oleobject // Use "Chilkat_9_5_0.Scp" for versions of Chilkat < 10.0.0 li_rc = loo_Scp.ConnectToNewObject("Chilkat.Scp") li_Success = loo_Scp.UseSsh(loo_Ssh) if li_Success <> 1 then Write-Debug loo_Scp.LastErrorText destroy loo_Ssh destroy loo_Scp return end if ls_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. ls_EncodedJpg = loo_Scp.DownloadBinaryEncoded(ls_RemotePath,"base64") if loo_Scp.LastMethodSuccess <> 1 then Write-Debug loo_Scp.LastErrorText destroy loo_Ssh destroy loo_Scp return end if ls_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 li_Success = loo_Scp.UploadBinaryEncoded(ls_RemotePath,ls_EncodedJpg,"base64") if li_Success <> 1 then Write-Debug loo_Scp.LastErrorText destroy loo_Ssh destroy loo_Scp return end if Write-Debug "SCP download/upload binary encoded success." // Disconnect loo_Ssh.Disconnect() destroy loo_Ssh destroy loo_Scp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.