RushApp.FTP.Transfer
Declare
procedure Transfer(
Handle: Integer;
SrcList, SrcFolder, SrcItem, DesList, DesFolder, DesItem: string;
Flag: Integer;
FolderAllow, FolderSkip, FileAllow, FileSkip: string;
CompleteFlag: string;
RepeatCount: Integer;
RetryCount: Integer;
Timeout: Integer;
FolderSort, FileSort: Integer;
Depth, SubCount: Integer;
);
Description
Transfer Queue , support upload download and FXP
Parameters
Handle
|
specifies which window to place queues, first window is 1, 2th window is 2..., if you do not use this param, set it to zero.
|
SrcList
|
SrcList is the source FTP name or a List of FTP names, if it's a list of FTP names, be splitted with RushApp.FTP.Splitter, This param be used for Download and FXP
|
SrcFolder
|
SrcFolder is the source folder name or a bookmark, for Upload, it's a Local folder path or a Local bookmark
|
SrcItem
|
SrcItem is the source folder or file name, for Upload, it's a Local folder name or file name
|
DesList
|
same as SrcList
|
DesFolder
|
same as SrcFolder
|
DesItem
|
same as SrcItem
|
Flag
|
If you don't use Flag, use zero instead of it.
|
|
RS_FILE
|
tell FTP Rush this queue is a file, without this flag this queue is a folder
|
|
RS_UP
|
tell FTP Rush this queue is upload mode, without this flag this queue is FXP mode
|
|
RS_DOWN
|
tell FTP Rush this queue is download mode, without this flag this queue is FXP mode
|
|
RS_DIRSRC
|
specifies SrcFolder is a folder, without this flag, SrcFolder is a bookmark
|
|
RS_DIRDES
|
specifies DesFolder is a folder, without this flag, DesFolder is a bookmark
|
|
RS_NOSKIP
|
tell FTP Rush do not use skiplist to filter DesItem and DesItem
|
|
RS_APPEND
|
tell FTP Rush combines all queue items at ONE window, otherwise, every queue item running at a NEW window.
|
|
RS_EXPR
|
if includes this flag, FolderAllow, FolderSkip, FileAllow, FileSkip match Perl Expressions, otherwise match wildcard
|
|
RS_LOGOUT
|
disconnected from server after queue transferred
|
|
RS_GHOST
|
use !username as login name
|
|
RS_INVERT
|
add or remove ' - ' from login password
|
|
RS_NOCIRCLE
|
Folder2 (n+1) won't start before folder1 (n) is all over
|
|
RS_CHECKLOGIN
|
only works for without RS_APPEND and dont use ContainerID.
then when no free logins to transfer, FTP Rush auto select a container which have the same transfer (src/dest) and append it
|
|
RS_POPUP
|
to bring FTP Rush on top
|
|
RS_DELEMPTYTABS
|
close empty containers automatically
|
|
RS_NOMKD
|
when transferring folders with sub dirs, FTP Rush will not create the sub dirs in dest FTP if sub dirs exists in dest FTP(just do CWD)
|
FolderAllow
|
Allow sub folders match FolderAllow param, can be a empty string
|
FolderSkip
|
Skip sub folders match FolderSkip param, can be a empty string
|
FileAllow
|
Allow sub files match FileAllow param, can be a empty string
|
FileSkip
|
Skip sub files match FileSkip param, can be a empty string
|
CompleteFlag
|
when set RepeatCount > 0, CompleteFlag can let the queue thread stop when thread found a folder/file name at Source/Destination directory list match the CompleteFlag, CompleteFlag only supports Perl Expressions
|
RepeatCount
|
indicates how many times to refresh for a folder
|
RetryCount
|
indicates retry count when transfer a file
|
Timeout
|
set timeout(seconds) for a FXP queue, when timeout and transfer not started, this queue will be removed *not implented*
|
FolderSort
|
define sort method for sub folders, set it to zero to use default sort method (sort by name ascending)
|
|
RS_SORTDES
|
specifies sort sorting as descending
|
|
RS_SORTDATE
|
specifies sort by date
|
|
RS_SORTSIZE
|
specifies sort by size
|
FileSort
|
define sort method for sub folders, set it to zero to use default sort method (sort by name ascending)
|
|
RS_SORTDES
|
specifies sort sorting as descending
|
|
RS_SORTDATE
|
specifies sort by date
|
|
RS_SORTSIZE
|
specifies sort by size
|
Depth
|
depth of sub folders
|
SubCount
|
when transfer a folder includes sub folder/files, the first SubCount file/folders will be transferred. set it to zero to disable this feature
|
Examples
//upload a file to FTP1 and logout
RushApp.FTP.Transfer(0, '', 'c:\temp', 'file1.jpg', 'FTP1', '/pictures', 'file1.jpg', RS_UP or RS_FILE or RS_DIRDES or RS_DIRSRC or RS_LOGOUT, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//download a folder from FTP1 and logout
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', '', '', 'c:\temp\test', '', RS_DOWN or RS_DIRDES or RS_DIRSRC or RS_LOGOUT, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a file from FTP1 to FTP2
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', 'file1.jpg', 'FTP2', '/test', 'file2.jpg', RS_FILE or RS_DIRDES or RS_DIRSRC, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a folder from FTP1 to FTP2
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', '', 'FTP2', '/test', '', RS_DIRDES or RS_DIRSRC, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a folder from FTP1 to FTP2 with latest file or folder only
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', '', 'FTP2', '/test', '', RS_DIRDES or RS_DIRSRC, '', '', '', '', '', 0, 0, 0, RS_SORTDATE or RS_SORTDES, 0, 0, 1);
//FXP a folder from FTP1 to FTP2 and FXP same folder from FTP1 to FTP3 at sametime
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', '', 'FTP2;FTP3', '/test', '', RS_DIRDES or RS_DIRSRC, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a folder from FTP1 to FTP2 then FXP same folder from FTP1 to FTP3
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', '', 'FTP2;FTP3', '/test', '', RS_DIRDES or RS_DIRSRC or RS_APPEND, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a folder(inside bookmark 'pub') from FTP1 to FTP2 and FTP2 to FTP3 at same time
RushApp.FTP.Transfer(0, '', '', '', 'FTP1;FTP2;FTP3', 'pub', 'pictures', 0, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a folder(inside bookmark 'pub') from FTP1 to FTP2(at window 3) and FTP2 to FTP3(at window 4) at same time
RushApp.FTP.Transfer(3, '', '', '', 'FTP1;FTP2;FTP3', 'pub', 'pictures', 0, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
//FXP a folder from FTP1 to FTP2 then FXP same folder from FTP1 to FTP3, and close empty tabs
RushApp.FTP.Transfer(0, 'FTP1', '/pictures', '', 'FTP2;FTP3', '/test', '', RS_DIRDES or RS_DIRSRC or RS_APPEND or RS_DELEMPTYTABS, '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0);
|