![]() |
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
(PureBasic) SFTP Fsync -- Flush an Open File on the ServerDemonstrates how to flush the contents of an open file on the server. This example only works for servers that implement the fsync@openssh.com extension. Note: This example requires Chilkat v9.5.0.71 or later.
IncludeFile "CkSFtp.pb" Procedure ChilkatExample() ; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. sftp.i = CkSFtp::ckCreate() If sftp.i = 0 Debug "Failed to create object." ProcedureReturn EndIf ; Pass a domain or IP address.. success.i = CkSFtp::ckConnect(sftp,"my-sftp-server.com",22) If success = 1 success = CkSFtp::ckAuthenticatePw(sftp,"mySFtpLogin","mySFtpPassword") EndIf If success = 1 success = CkSFtp::ckInitializeSftp(sftp) EndIf If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Open a file on the server for writing. handle.s = CkSFtp::ckOpenFile(sftp,"myTest.txt","writeOnly","createTruncate") If CkSFtp::ckLastMethodSuccess(sftp) <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Write some text to the file: success = CkSFtp::ckWriteFileText(sftp,handle,"ansi","abcdefghijklmnopqrstuvwxyz") If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Make sure the server flushes what we wrote to the disk.. ; (this is requires a server that implements the fsync@openssh.com SFTP protocol extension) success = CkSFtp::ckFsync(sftp,handle) If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; .... ; .... success = CkSFtp::ckWriteFileText(sftp,handle,"ansi","ABCDEFGHIJKLMNOPQRSTUVWXYZ") If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf ; Close the file. success = CkSFtp::ckCloseHandle(sftp,handle) If success <> 1 Debug CkSFtp::ckLastErrorText(sftp) CkSFtp::ckDispose(sftp) ProcedureReturn EndIf Debug "Success." CkSFtp::ckDispose(sftp) ProcedureReturn EndProcedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.