Sample code for 30+ languages & platforms
AutoIt

FTP Download Binary File to a Stream

See more FTP Examples

Demonstrates how to FTP download a binary file to a Chilkat stream.

Note: This example requires Chilkat v9.5.0.67 or greater.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

; This example assumes the Chilkat FTP2 API to have been previously unlocked.
; See FTP2 Unlock Sample for sample code.

$oFtp = ObjCreate("Chilkat.Ftp2")

$oFtp.Hostname = "www.my-ftp-server.com"
$oFtp.Username = "mFtpLogin"
$oFtp.Password = "myFtpPassword"
$oFtp.AuthTls = True
$oFtp.Passive = True

; Connect and login to the FTP server using TLS.
$bSuccess = $oFtp.Connect()
If ($bSuccess <> True) Then
    ConsoleWrite($oFtp.LastErrorText & @CRLF)
    Exit
EndIf

; We'll read the incoming data chunk-by-chunk and write to an output file.
$oFac = ObjCreate("Chilkat.FileAccess")
$bSuccess = $oFac.OpenForWrite("qa_output/penguins2.jpg")
If ($bSuccess <> True) Then
    ConsoleWrite($oFac.LastErrorText & @CRLF)
    Exit
EndIf

$oStreamObj = ObjCreate("Chilkat.Stream")

; Create a task to do the FTP download.
Local $oT = $oFtp.GetFileToStreamAsync("penguins2.jpg",$oStreamObj)
If ($oFtp.LastMethodSuccess <> True) Then
    ConsoleWrite($oFtp.LastErrorText & @CRLF)
    Exit
EndIf

; Start the task in a background thread.
$oT.Run()

$oBd = ObjCreate("Chilkat.BinData")
While $oStreamObj.EndOfStream <> True
    ; Get the next chunk of JPG bytes.
    $oStreamObj.ReadBd($oBd)
    ; Do something with it..
    ; In this simple example, we'll just write to the file.
    $oFac.FileWriteBd($oBd,0,0)
    ; Clear for the next read.
    $oBd.Clear()
Wend

$oFac.FileClose 

ConsoleWrite("Success." & @CRLF)