Navigation:  thinBasic Modules > FTP (File Transfer Profotol) >

FTP_GetFile

Previous pageReturn to chapter overviewNext page

 

Description

 

Gets (downloads) file from FTP server.

 

Syntax

 

n = FTP_GetFile(sFileName, lOptions)

 

Returns

 

Number

A value < 0 indicates an error. Use FTP_GetErrorString(nRet) to get info about the error code

 

Parameters

 

Name

Type

Optional

Meaning

sFileName

String

No

Name of the file to be downloaded.

The file can be also be renamed when it is saved by specifying "oldname:newname" for sFilename

lOptions

Number

No

One of the following two equates indicating download method:

%FTP_SET_SYNC

this option instructs FTP engine to keep control till the file is fully downloaded or an error has occurred
 

%FTP_SET_ASYNC

this option instructs FTP engine to start downloading the file but immediately pass control to the script. In this case programmer is responsible to setup a loop to control download process till file is fully downloaded or an error has occurred
 

 

Remarks

 

Restrictions

 

See also

 

Examples

 

...

'-------------------------------------------------------------------------

'Start DownLoad process Sync mode

'-------------------------------------------------------------------------

'---Sync mode: no way to loop because script execution control

'---will be maintained by FTP_GetFile till download finished or error occurs 

PrintL "---Start downloading in %FTP_SET_SYNC mode----"

FileName = "screen001.jpg"

ftpResult = FTP_GetFile(FileName, %FTP_SET_SYNC)

PrintL "FTP finished is: " + ftpResult

PrintL "----------------------------------------------"

 

'-------------------------------------------------------------------------

'Start DownLoad process Async mode

'-------------------------------------------------------------------------

'---ASync mode: a loop must be setup because script execution control

'---is immediately returned to the script

PrintL "---Start downloading in %FTP_SET_ASYNC mode---"

Dim yPos As Long

FileName = "screen001.jpg"

ftpResult = FTP_GetFile(FileName, %FTP_SET_ASYNC)

PrintL

yPos = Console_GetCursorY

Do

  DoEvents

  PrintAt(FileName & " bytes: " & FTP_GetNumber(%FTP_GET_FILE_BYTES_RCVD), 1, yPos)

Loop while FTP_Finished > 0   ' Loop until end of file reached

 

PrintL "FTP finished is: " + FTP_Finished

PrintL "----------------------------------------------"

...