Sample code for 30+ languages & platforms
DataFlex

Get the FTP Server System Type (SYST)

See more FTP Examples

Demonstrates the Chilkat Ftp2.Syst method, which sends SYST and returns the server's operating-system type reply. It takes no arguments.

Background: The SYST reply (for example UNIX Type: L8 or Windows_NT) hints at how the server formats things like legacy directory listings, which historically varied by platform. Chilkat uses it internally to parse such listings; you rarely need to call it directly, but it is useful for diagnostics or when adapting to an unusual server.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Boolean iSuccess
    Handle hoFtp
    String sSystemType
    String sTemp1
    Boolean bTemp1

    Move False To iSuccess

    //  Demonstrates the Ftp2.Syst method, which sends SYST and returns the server's operating-system
    //  type reply.  It takes no arguments.

    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 "myFtpLogin"

    //  Normally you would not hard-code the password in source.  You should instead obtain it
    //  from an interactive prompt, environment variable, or a secrets vault.
    Set ComPassword Of hoFtp To "myPassword"

    //  Connect and log in (Connect performs both).
    Get ComConnect Of hoFtp To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoFtp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    //  Chilkat can use the SYST reply when interpreting legacy directory listings.
    Get ComSyst Of hoFtp To sSystemType
    Get ComLastMethodSuccess Of hoFtp To bTemp1
    If (bTemp1 = False) Begin
        Get ComLastErrorText Of hoFtp To sTemp1
        Showln sTemp1
        Procedure_Return
    End

    Showln "Server system type: " sSystemType

    Get ComDisconnect Of hoFtp To iSuccess
    If (iSuccess = False) Begin
        Get ComLastErrorText Of hoFtp To sTemp1
        Showln sTemp1
        Procedure_Return
    End



End_Procedure