Sample code for 30+ languages & platforms
Xbase++

Inovis VAN FTP/SSL (EDI)

See more FTP Examples

Demonstrates how to connect to the Inovis EDI VAN (FTP/SSL).

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oFtp

nSuccess := 0

//  This example requires the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oFtp := CreateObject("Chilkat.Ftp2")

oFtp:Hostname := "ftpssl.gateway.inovisworks.net"
oFtp:Username := "myLogin"
oFtp:Password := "myPassword"

//  The Inovis EDI VAN requires Passive connections:
oFtp:Passive := 1

//  Note: The Inovis documentation mentions an outbound
//  high port range of 40000-49999.  In passive mode, the
//  FTP server chooses the port number for the data
//  connection.  The Inovis server will choose a port number
//  in the range 40000-49999.  To establish the data connection,
//  your firewall must allow outgoing connections in that port
//  range. 

//  This tells Chilkat FTP2 to establish
//  an AUTH TLS secure channel after connecting
//  on the standard FTP port 21.
oFtp:AuthTls := 1

//  You'll probably need this property set to 1 if you're
//  behind a NAT router or firewall.
oFtp:PassiveUseHostAddr := 1

//  The Ssl property is for establishing an implicit SSL connection
//  on port 990.  Do not set it to 1.  The Inovis VAN
//  uses explicit encryption (SSL/TLS).
oFtp:Ssl := 0

//  The Chilkat FTP component automatically sends a "FEAT";
//  command after connecting.  This allows the component
//  to better know the FTP server's capabilities.
//  The Invois server doesn't recognize the FEAT command,
//  so disable it:
oFtp:AutoFeat := 0

//  Connect, convert to TLS, and login to the FTP server.
nSuccess := oFtp:Connect()
IF (nSuccess != 1)
    ? oFtp:LastErrorText
    oFtp:destroy()
    RETURN
ELSE
    //  LastErrorText contains information even when
    //  successful. This allows you to visually verify
    //  that the secure connection actually occurred.
    ? oFtp:LastErrorText
ENDIF

? "Connection to Inovis EDI VAN OK!"

//  Do whatever you're doing to do ...
//  upload files, download files, etc...

nSuccess := oFtp:Disconnect()

oFtp:destroy()