PureBasic
PureBasic
FTP Set Remote File Date/Time Equal to Local File's Last-Modified Date/Time
See more FTP Examples
Demonstrates how to set a remote file's date/time to be equal to a local file's date/time.Important: Not all FTP servers support the ability to set a file's date/time.
Chilkat PureBasic Downloads
IncludeFile "CkFtp2.pb"
IncludeFile "CkFileAccess.pb"
IncludeFile "CkDateTime.pb"
Procedure ChilkatExample()
success.i = 0
; This example assumes Chilkat Ftp2 to have been previously unlocked.
; See Unlock Ftp2 for sample code.
ftp.i = CkFtp2::ckCreate()
If ftp.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkFtp2::setCkHostname(ftp, "www.authtls-ftps-server.com")
CkFtp2::setCkUsername(ftp, "FTP_LOGIN")
CkFtp2::setCkPassword(ftp, "FTP_PASSWORD")
CkFtp2::setCkAuthTls(ftp, 1)
CkFtp2::setCkPort(ftp, 21)
; Connect to the FTP server using explicit TLS (AUTH TLS).
success = CkFtp2::ckConnectOnly(ftp)
If success = 0
Debug CkFtp2::ckLastErrorText(ftp)
CkFtp2::ckDispose(ftp)
ProcedureReturn
EndIf
; Authenticate.
success = CkFtp2::ckLoginAfterConnectOnly(ftp)
If success = 0
Debug CkFtp2::ckLastErrorText(ftp)
CkFtp2::ckDispose(ftp)
ProcedureReturn
EndIf
; We're going to get the last-mod date/time for the local file
; "qa_data/hamlet.xml", and then set the remote "hamlet.xml" to this date/time.
fac.i = CkFileAccess::ckCreate()
If fac.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
dt.i = CkDateTime::ckCreate()
If dt.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
lastModTimestamp.s = CkFileAccess::ckGetFileTimeStr(fac,"qa_data/hamlet.xml",0)
CkDateTime::ckSetFromTimestamp(dt,lastModTimestamp)
success = CkFtp2::ckSetRemoteFileDt(ftp,dt,"hamlet.xml")
If success <> 1
Debug CkFtp2::ckLastErrorText(ftp)
CkDateTime::ckDispose(dt)
CkFtp2::ckDispose(ftp)
CkFileAccess::ckDispose(fac)
CkDateTime::ckDispose(dt)
ProcedureReturn
EndIf
CkFtp2::ckDisconnect(ftp)
Debug "Success."
CkFtp2::ckDispose(ftp)
CkFileAccess::ckDispose(fac)
CkDateTime::ckDispose(dt)
ProcedureReturn
EndProcedure