函数参考


_FTP_ProgressDownload

以二进制模式下载文件,并显示(或通过调用用户自定义函数)进度窗口.

#Include <FTPEx.au3>
_FTP_ProgressDownload($l_FTPSession, $s_LocalFile, $s_RemoteFile [, $FunctionToCall = ""])

参数

$l_FTPSession _FTP_Connect() 返回值.
$s_LocalFile 创建的本地文件.
$s_RemoteFile 远程源文件.
$FunctionToCall [可选参数] 可更新进度条的函数,并对用户输入(如中止或关闭应用的点击操作)作出反应. (更多资讯见备注)

返回值

成功: 返回 1
失败: 返回 0, 并设置 @error:
@error: -1 - 无法创建本地文件
-2 - 不能获取远程文件大小
-3 - 打开远程文件失败
-4 - 读取远程文件失败
-5 - 关闭远程文件失败
-6 - 被调用函数返回的百分比下载失败
-7 - 本地文件写入失败

注意/说明

关于 $FunctionToCall 的信息:
    参数: $Percentage - 进度百分比
    返回值:继续下载 - 1
        中止下载 - 0 或负数
        这些值也可由 _FTP_ProgressDownload() 返回,
        所以你可进行不同的操作, 比如由用户退出, 关闭应用程序或超时
    示例:
        Func _UpdateProgress($Percentage)
            ProgressSet($percent,$percent &"%")
            If _IsPressed("77") Then Return 0 ; F8 键中止
            Return 1 ; bei 1 Fortsetzten
        Endfunc

        Func _UpdateProgress($Percentage)
            GUICtrlSetData($ProgressBarCtrl,$percent)
            Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                Return -1 ; _FTP_DownloadProgress 中止, 所以稍后可退出应用
            Case $Btn_Cancel
                Return 0 ; 仅取消, 无指定返回值
            EndSwitch
            Return 1 ; 否则继续下载
        Endfunc

相关