Lianja
Lianja
SFTP Upload and Download to a BinData Object
See more SFTP Examples
Demonstrates how to SFTP upload from a BinData object, and download into a BinData object.Chilkat Lianja Downloads
llSuccess = .F.
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
loSftp = createobject("CkSFtp")
// Set some timeouts, in milliseconds:
loSftp.ConnectTimeoutMs = 5000
loSftp.IdleTimeoutMs = 10000
// Connect to the SSH server and then authenticate.
lnPort = 22
llSuccess = loSftp.Connect("MY-SSH-SERVER-DOMAIN-OR-IP",lnPort)
if (llSuccess = .T.) then
llSuccess = loSftp.AuthenticatePw("MY-SSH-LOGIN","MY-SSH-PASSWORD")
if (llSuccess = .T.) then
llSuccess = loSftp.InitializeSftp()
endif
endif
if (llSuccess <> .T.) then
? loSftp.LastErrorText
release loSftp
return
endif
loBdA = createobject("CkBinData")
loBdA.LoadFile("qa_data/jpg/penguins.jpg")
// Upload the contents of bdA to the SSH/SFTP server.
lcRemotePath = "sftpTesting/penguins.jpg"
llSuccess = loSftp.UploadBd(loBdA,lcRemotePath)
if (llSuccess <> .T.) then
? loSftp.LastErrorText
release loSftp
release loBdA
return
endif
// Download the file..
loBdB = createobject("CkBinData")
llSuccess = loSftp.DownloadBd(lcRemotePath,loBdB)
if (llSuccess <> .T.) then
? loSftp.LastErrorText
release loSftp
release loBdA
release loBdB
return
endif
// Verify that bdA and bdB have the exact same contents.
? "size of bdA: " + str(loBdA.NumBytes)
if (loBdA.ContentsEqual(loBdB) = .T.) then
? "Contents are equal. Success."
else
? "Contents are NOT equal. Failed."
endif
loSftp.Disconnect()
release loSftp
release loBdA
release loBdB