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
(Unicode C) SFTP Upload and Download to a BinData ObjectSee more SFTP ExamplesDemonstrates how to SFTP upload from a BinData object, and download into a BinData object.
#include <C_CkSFtpW.h> #include <C_CkBinDataW.h> void ChilkatSample(void) { HCkSFtpW sftp; BOOL success; int port; HCkBinDataW bdA; const wchar_t *remotePath; HCkBinDataW bdB; // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. sftp = CkSFtpW_Create(); // Set some timeouts, in milliseconds: CkSFtpW_putConnectTimeoutMs(sftp,5000); CkSFtpW_putIdleTimeoutMs(sftp,10000); // Connect to the SSH server and then authenticate. port = 22; success = CkSFtpW_Connect(sftp,L"MY-SSH-SERVER-DOMAIN-OR-IP",port); if (success == TRUE) { success = CkSFtpW_AuthenticatePw(sftp,L"MY-SSH-LOGIN",L"MY-SSH-PASSWORD"); if (success == TRUE) { success = CkSFtpW_InitializeSftp(sftp); } } if (success != TRUE) { wprintf(L"%s\n",CkSFtpW_lastErrorText(sftp)); CkSFtpW_Dispose(sftp); return; } bdA = CkBinDataW_Create(); CkBinDataW_LoadFile(bdA,L"qa_data/jpg/penguins.jpg"); // Upload the contents of bdA to the SSH/SFTP server. remotePath = L"sftpTesting/penguins.jpg"; success = CkSFtpW_UploadBd(sftp,bdA,remotePath); if (success != TRUE) { wprintf(L"%s\n",CkSFtpW_lastErrorText(sftp)); CkSFtpW_Dispose(sftp); CkBinDataW_Dispose(bdA); return; } // Download the file.. bdB = CkBinDataW_Create(); success = CkSFtpW_DownloadBd(sftp,remotePath,bdB); if (success != TRUE) { wprintf(L"%s\n",CkSFtpW_lastErrorText(sftp)); CkSFtpW_Dispose(sftp); CkBinDataW_Dispose(bdA); CkBinDataW_Dispose(bdB); return; } // Verify that bdA and bdB have the exact same contents. wprintf(L"size of bdA: %d\n",CkBinDataW_getNumBytes(bdA)); if (CkBinDataW_ContentsEqual(bdA,bdB) == TRUE) { wprintf(L"Contents are equal. Success.\n"); } else { wprintf(L"Contents are NOT equal. Failed.\n"); } CkSFtpW_Disconnect(sftp); CkSFtpW_Dispose(sftp); CkBinDataW_Dispose(bdA); CkBinDataW_Dispose(bdB); } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.