易语言 如何复制当前文件夹的文件并显示进度条?

复制当前文件夹里的“151.rar”和“152.rar” 点击开始就执行,显示进度条
麻烦了.小弟急用..
创建文件夹(在当前文件夹里) 名为“zpk”

“151.rar”和“152.rar” 复制到zpk文件夹里

当点击另一个键时,把zpk文件夹里的“151.rar”和“152.rar”复制回当前文件夹

我刚好有写过这样的超大文件的易语言复制进度,下面是代码,我直接复制上来,你修改下就可以了,不懂M我
-----------------------------------------------------------------------------------
.版本 2
.支持库 iext

.程序集 备份窗口程序集
.程序集变量 累计数量, 整数型

.子程序 _备份窗口_创建完毕
.局部变量 循环次数, 整数型
.局部变量 n, 整数型

累计数量 = 0
备份窗口.可视 = 真
循环次数 = _启动窗口.列表框1.取项目数 ()
进度条1.最大位置 = 循环次数
.计次循环首 (循环次数, n)
创建多级目录 (_启动窗口.编辑框1.内容 + “\” + 到文本 (取日期 (取现行时间 ())) + 取文本右边 (_启动窗口.列表框1.取项目文本 (n - 1), 取文本长度 (_启动窗口.列表框1.取项目文本 (n - 1)) - 2))
递归寻找 (_启动窗口.列表框1.取项目文本 (n - 1))
进度条1.位置 = n

.计次循环尾 ()
开始复制文件 ()

.子程序 递归寻找, , , 递归样式
.参数 目录, 文本型
.局部变量 文件名, 文本型

处理事件 () ' 防止程序假死
.如果真 (取文本右边 (目录, 1) ≠ “\”)
目录 = 目录 + “\”
.如果真结束
文件名 = 寻找文件 (目录 + “*.*”, )
.判断循环首 (文件名 ≠ “”)
累计数量 = 累计数量 + 1
备份窗口.标题 = “找到文件个数:” + 到文本 (累计数量) + “个”
列表框1.加入项目 (目录 + 文件名, )
列表框1.现行选中项 = 累计数量
文件名 = 寻找文件 (, )
.判断循环尾 ()
文件名 = 寻找文件 (目录 + “*.*”, #子目录)
.判断循环首 (文件名 ≠ “”)
.如果真 (取文本左边 (文件名, 1) ≠ “.”)
递归寻找 (目录 + 文件名)
创建多级目录 (_启动窗口.编辑框1.内容 + “\” + 到文本 (取日期 (取现行时间 ())) + 取文本右边 (目录 + 文件名, 取文本长度 (目录 + 文件名) - 2))

.如果真结束
文件名 = 寻找文件 (, #子目录)
.判断循环尾 ()

.子程序 _备份窗口_可否被关闭, 逻辑型

返回 (假)

.子程序 开始复制文件
.局部变量 n, 整数型
.局部变量 进度位置, 小数型, , "2"
.局部变量 临时路径, 文本型

进度条1.最大位置 = 100
进度位置 [1] = 100 ÷ 累计数量
.计次循环首 (累计数量, n)
进度位置 [2] = 进度位置 [2] + 进度位置 [1]
进度条1.位置 = 进度位置 [2]
临时路径 = 列表框1.取项目文本 (n - 1)
列表框1.现行选中项 = n - 1
复制进程 (临时路径, _启动窗口.编辑框1.内容 + “\” + 到文本 (取日期 (取现行时间 ())) + 取文本右边 (临时路径, 取文本长度 (临时路径) - 2))
透明标签3.标题 = 到文本 (进度条1.位置) + “%”
.计次循环尾 ()
销毁 ()

.子程序 复制进程
.参数 临时路径, 文本型
.参数 写到的文件, 文本型
.局部变量 临时数值, 整数型
.局部变量 临时字节, 字节集
.局部变量 取值次数, 整数型
.局部变量 最后取值, 整数型
.局部变量 读入文件号, 整数型
.局部变量 次数循环, 整数型
.局部变量 读入的数据, 字节集
.局部变量 读入的摘要, 文本型
.局部变量 文件大小, 长整数型
.局部变量 最后摘要, 文本型
.局部变量 进度位置, 小数型, , "2"
.局部变量 读入长度, 长整数型
.局部变量 属性文本, 文本型
.局部变量 临时文件号, 整数型

临时数值 = 取文件尺寸 (临时路径)

临时字节 = 到字节集 (临时数值)

文件大小 = 取字节集数据 (临时字节, #长整数型, )

取值次数 = 到整数 (文件大小 ÷ 取值大小)

最后取值 = 文件大小 - 取值次数 × 取值大小

进度位置 [1] = 100 ÷ 取值次数

关闭文件 (读入文件号)
关闭文件 (临时文件号)
读入文件号 = 打开文件 (临时路径, , )

移动读写位置 (读入文件号, #文件首, 0)

写到文件 (写到的文件, 到字节集 (“”))
临时文件号 = 打开文件 (写到的文件, , )

.计次循环首 (取值次数, 次数循环)
进度位置 [2] = 进度位置 [2] + 进度位置 [1]
进度条2.位置 = 进度位置 [2]
透明标签4.标题 = 到文本 (进度条2.位置) + “%”
读入的数据 = 读入字节集 (读入文件号, 取值大小)
移动读写位置 (临时文件号, #文件尾, 0)
写出字节集 (临时文件号, 读入的数据)

.计次循环尾 ()
读入的数据 = 读入字节集 (读入文件号, 最后取值)
移动读写位置 (临时文件号, #文件尾, 0)
写出字节集 (临时文件号, 读入的数据)
进度条2.位置 = 100
透明标签4.标题 = 到文本 (进度条2.位置) + “%”
关闭文件 (读入文件号)
关闭文件 (临时文件号)

.子程序 创建多级目录
.参数 目录名称, 文本型
.局部变量 当前路径, 文本型
.局部变量 目录名, 文本型, , "0"
.局部变量 索引, 整数型

目录名 = 分割文本 (目录名称, “\”, )
.计次循环首 (取数组成员数 (目录名), 索引)
创建目录 (当前路径 + 目录名 [索引])
当前路径 = 当前路径 + 目录名 [索引] + “\”
.计次循环尾 ()
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-04
api
xcopy 好像是这个名字