Chilkat • HOME • Android™ • AutoIt • C • C# • C++ • Chilkat2-Python • CkPython • Classic ASP • DataFlex • Delphi DLL • Go • Java • Node.js • Objective-C • PHP Extension • Perl • PowerBuilder • PowerShell • PureBasic • Ruby • SQL Server • Swift • Tcl • Unicode C • Unicode C++ • VB.NET • VBScript • Visual Basic 6.0 • Visual FoxPro • Xojo Plugin
(PowerBuilder) SFTP Upload from Local FilesystemDemonstrates how to upload a file to an SSH server. There are no limitations on file size, and the file is streamed directly from the local filesystem.
integer li_rc oleobject loo_Sftp string ls_Hostname integer li_Port integer li_Success string ls_Handle // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Sftp = create oleobject // Use "Chilkat_9_5_0.SFtp" for versions of Chilkat < 10.0.0 li_rc = loo_Sftp.ConnectToNewObject("Chilkat.SFtp") if li_rc < 0 then destroy loo_Sftp MessageBox("Error","Connecting to COM object failed") return end if // Set some timeouts, in milliseconds: loo_Sftp.ConnectTimeoutMs = 5000 loo_Sftp.IdleTimeoutMs = 10000 // Connect to the SSH server. // The standard SSH port = 22 // The hostname may be a hostname or IP address. ls_Hostname = "sftp.example.com" li_Port = 22 li_Success = loo_Sftp.Connect(ls_Hostname,li_Port) if li_Success <> 1 then Write-Debug loo_Sftp.LastErrorText destroy loo_Sftp return end if // Authenticate with the SSH server. Chilkat SFTP supports // both password-based authenication as well as public-key // authentication. This example uses password authenication. li_Success = loo_Sftp.AuthenticatePw("myLogin","myPassword") if li_Success <> 1 then Write-Debug loo_Sftp.LastErrorText destroy loo_Sftp return end if // After authenticating, the SFTP subsystem must be initialized: li_Success = loo_Sftp.InitializeSftp() if li_Success <> 1 then Write-Debug loo_Sftp.LastErrorText destroy loo_Sftp return end if // Open a file for writing on the SSH server. // If the file already exists, it is overwritten. // (Specify "createNew" instead of "createTruncate" to // prevent overwriting existing files.) ls_Handle = loo_Sftp.OpenFile("hamlet.xml","writeOnly","createTruncate") if loo_Sftp.LastMethodSuccess <> 1 then Write-Debug loo_Sftp.LastErrorText destroy loo_Sftp return end if // Upload from the local file to the SSH server. li_Success = loo_Sftp.UploadFile(ls_Handle,"c:/temp/hamlet.xml") if li_Success <> 1 then Write-Debug loo_Sftp.LastErrorText destroy loo_Sftp return end if // ----------------------------------------------------------------------------- // This is important. You must close the handle on the server. // Otherwise open handles will accumulate on the server until eventually a limit // is reached and the server will fail on a call to OpenFile. // ----------------------------------------------------------------------------- // Close the file. li_Success = loo_Sftp.CloseHandle(ls_Handle) if li_Success <> 1 then Write-Debug loo_Sftp.LastErrorText destroy loo_Sftp return end if Write-Debug "Success." destroy loo_Sftp |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.