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 Sync Tree DownloadSynchronize local and remote directory trees by downloading newer or missing files from the remote server.
integer li_rc oleobject loo_Ssh string ls_Hostname integer li_Port integer li_Success oleobject loo_Scp string ls_RemoteRoot string ls_LocalRoot integer li_Mode integer li_BRecurse // 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 // Connect to an SSH server: // Hostname may be an IP address or hostname: ls_Hostname = "www.some-ssh-server.com" li_Port = 22 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_RemoteRoot = "workspace/php" ls_LocalRoot = "c:/aaworkarea/scp/workspace/php" // Download synchronization modes: // mode=0: Download all files // mode=1: Download all files that do not exist on the local filesystem. // mode=2: Download newer or non-existant files. // mode=3: Download only newer files. // If a file does not already exist on the local filesystem, it is not downloaded from the server. // mode=5: Download only missing files or files with size differences. // mode=6: Same as mode 5, but also download newer files. li_Mode = 2 // Sync the entire tree by using recursion. li_BRecurse = 1 li_Success = loo_Scp.SyncTreeDownload(ls_RemoteRoot,ls_LocalRoot,li_Mode,li_BRecurse) if li_Success <> 1 then Write-Debug loo_Scp.LastErrorText destroy loo_Ssh destroy loo_Scp return end if Write-Debug "SCP sync download success." // Disconnect loo_Ssh.Disconnect() destroy loo_Ssh destroy loo_Scp |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.