ftp/Module1.bas
Attribute VB_Name = "Module1"
' Technical support: support@smartftp.com
Option Explicit
Public objFTP As sfFTPLib.FTPConnectionSTA
Public objGlobal As sfFTPLib.Global
' With events
'Dim WithEvents objFTP As FTPConnectionSTA
Sub Main()
' VB6 binding howto
' http://kandkconsulting.tripod.com/VB/Tutorials/vb_binding_tutorial.htm
'Early Binding "Dual Interface"
'Note: Force the compiler to use the dual interface if available
Set objGlobal = CreateObject("sfFTPLib.Global")
' Uncomment to load key from string
'objGlobal.LoadLicense("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX")
'Early Binding "Dual Interface"
'Note: Force the compiler to use the dual interface if available
Set objFTP = CreateObject("sfFTPLib.FTPConnectionSTA")
'Early Binding "Mid Level"
'Note: The compiler may use the dual interface
'Set objFTP = New sfFTPLib.FTPConnectionSTA
objFTP.Host = "ftp.smartftp.com"
objFTP.Port = 21
objFTP.Protocol = ftpProtocolSSLExplicit
objFTP.Username = "anonymous"
objFTP.Password = "test@test.com"
objFTP.Passive = True
'Dim fileLogger As sfFTPLib.FileLogger
'Set fileLogger = objFTP.SetFileLogger()
'fileLogger.File = "VB6Demo.log"
Call objFTP.Connect
MsgBox ("Connected.")
objFTP.ChangeDirectory ("/SmartFTP")
MsgBox ("ChangeDirectory() successful.")
' Read Directory
Dim objDirectory As sfFTPLib.FTPItems
Set objDirectory = objFTP.ReadDirectory()
Dim objItem As sfFTPLib.FTPItem
Dim strList
For Each objItem In objDirectory
strList = strList & "Type=" & objItem.Type & "; Name=" & objItem.Name & "; Size=" & objItem.SizeLo & Chr(13) & Chr(10)
Next
MsgBox (strList)
' Download File
Dim nRestartLo: nRestartLo = 0
Dim nRestartHi: nRestartHi = 0
Dim strMsg
Call objFTP.DownloadFile("History.txt", "History.txt", nRestartLo, nRestartHi)
strMsg = "DownloadFile() successful." & Chr(13) & Chr(10)
strMsg = strMsg & "LastTransferBytes = " & objFTP.LastTransferBytesLo & " B" & Chr(13) & Chr(10)
strMsg = strMsg & "LastTransferTime = " & objFTP.LastTransferTime & " s" & Chr(13) & Chr(10)
strMsg = strMsg & "LastTransferSpeed = " & objFTP.LastTransferSpeed & " B/s"
MsgBox (strMsg)
End Sub