DataFlex
DataFlex
FTP through HTTP Tunnel (FTP over HTTP Proxy)
See more FTP Examples
Note: This example requires Chilkat v9.5.0.51 or greater.FTP through an HTTP tunnel (via an HTTP proxy server that supports HTTP tunneling).
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoFtp
String sLocalFilename
String sRemoteFilename
String sTemp1
Move False To iSuccess
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatFtp2)) To hoFtp
If (Not(IsComObjectCreated(hoFtp))) Begin
Send CreateComObject of hoFtp
End
Set ComHostname Of hoFtp To "ftp.example.com"
Set ComUsername Of hoFtp To "login"
Set ComPassword Of hoFtp To "password"
// Set the HTTP proxy server properties.
// This is to connect via HTTP/1.1 using CONNECT method
Set ComHttpProxyHostname Of hoFtp To "192.168.1.127"
Set ComHttpProxyPort Of hoFtp To 8080
// If the proxy server requires authentication...
Set ComHttpProxyUsername Of hoFtp To "myProxyUsername"
Set ComHttpProxyPassword Of hoFtp To "myProxyPassword"
// FTP over an HTTP proxy requires that FTP Passive mode be used
// for data transfers. It is not possible to use non-passive (active) mode
// for FTP over HTTP.
Set ComPassive Of hoFtp To True
// Connect and login to the FTP server.
Get ComConnect Of hoFtp To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoFtp To sTemp1
Showln sTemp1
Procedure_Return
End
// Change to the remote directory where the file will be uploaded.
Get ComChangeRemoteDir Of hoFtp "junk" To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoFtp To sTemp1
Showln sTemp1
Procedure_Return
End
// Upload a file.
Move "c:/temp/hamlet.xml" To sLocalFilename
Move "hamlet.xml" To sRemoteFilename
Get ComPutFile Of hoFtp sLocalFilename sRemoteFilename To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoFtp To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComDisconnect Of hoFtp To iSuccess
Showln "File Uploaded!"
End_Procedure