| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2345 人关注过本帖, 2 人收藏
标题:VFP中压缩工具WinRAR的调用
只看楼主 加入收藏
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
结帖率:95.83%
收藏(2)
 问题点数:0 回复次数:5 
VFP中压缩工具WinRAR的调用
VFP中压缩工具WinRAR的调用


(摘自网络)



作者:sibill 日期:2008-11-07

压缩:
  Delete FILE bak.jhz
  RUN /N7 WinRAR.exe a -ibck -r -k -o+ -y -hp123 -p123 bak.jhz dbf\*.*
或 RUN /N7 WinRAR.exe a -ibck -r -o+ -y -hp123 -p123 bak.jhz dbf\*.*
或 RUN /N7 WinRAR.exe a -ibck -ep1 -r -o+ -y -hp123 -p123 bak.jhz dbf\*.*

解压:
  RUN /N7 WinRAR.exe x -ibck -r -k -o+ -y -hp123 -p123 bak.jhz dbf\*.*
或 RUN /N7 WinRAR.exe x -ibck -r -o+ -y -hp123 -p123 bak.jhz dbf\*.*

参数说明:
a:添加到档案文件中
x:从档案文件中全路径释放文件
-ibck:后台运行WinRAR
-ep1:根据名字删除底层目录。不存储在命令行中输入的路径
-r:连同子文件夹操作
-k:锁定档案文件
-o+:覆盖已经存在的文件
-y:对所有询问均回应为“是”
-hp123:加密文件数据和文件头,密码为123
-p123:设置密码为123,此密码上一个密码可以不一样
bak.jhz:压缩后的文件名或要解压的文件(.jhz为自定义扩展名)
dbf\*.*:要压缩的文件或要解压到的文件位置

注:
 *!* 于2008年11月16日从http://www.下载得到,经测试成功

 *!* 要将WINRAR.EXE和RarExt.dll二个文件拷贝到VFP应用程序所在的当前目录中,未装WINRAR软件的电脑上也可以使用了。

[ 本帖最后由 wengjl 于 2012-8-10 13:30 编辑 ]
搜索更多相关主题的帖子: 工具 
2012-08-10 13:28
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
程序代码:
  SELECT * from bmk where !EMPTY(xm) and !EMPTY(cszh)  into cursor tmpls readwrite
  SELECT tmpls
  APPEND FROM grbmk for !EMPTY(xm) and !EMPTY(cszh)
  COPY TO ('.\zp\bmk'+cxxdm+'.dbf')
  CLOSE DATABASES

 
  IF FILE('bmk'+cxxdm+'.rar')
    ERASE ('bmk'+cxxdm+'.rar')
  ENDIF
  RUN /n7 winrar.exe a -ibck  -r -k -o+ -y bmk&cxxdm..rar .\zp\*.*

 
  MESSAGEBOX('上报文件已生成,请将已打包的文件 “bmk'+cxxdm+'.rar” 上报科技竞赛报名管理组委会!!!',64,'提示:')
这是我程序中用到WINRAR的生成上报数据按钮里的部分代码
cxxdm 某个学校的代码变量,如001,则生成的数据表就是“BMK001.DBF”,放到ZP目录下后,与照片一起,压缩为BMK001.RAR上报


只求每天有一丁点儿的进步就可以了
2012-08-10 13:40
hellovfp
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:禁止访问
威 望:30
帖 子:2976
专家分:7697
注 册:2009-7-21
收藏
得分:0 
试试使用7-zip。

我们都在路上。。。。。
2012-08-10 14:29
guxnan
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2011-7-1
收藏
得分:0 
记下
2013-01-24 10:59
厨师王德榜
Rank: 18Rank: 18Rank: 18Rank: 18Rank: 18
等 级:贵宾
威 望:199
帖 子:989
专家分:4966
注 册:2013-2-16
收藏
得分:0 
谢谢分享,这个确实有用。
2013-03-10 08:53
hyz00001
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:168
专家分:137
注 册:2012-10-5
收藏
得分:0 
以下是引用wengjl在2012-8-10 13:40:02的发言:

  SELECT * from bmk where !EMPTY(xm) and !EMPTY(cszh)  into cursor tmpls readwrite
  SELECT tmpls
  APPEND FROM grbmk for !EMPTY(xm) and !EMPTY(cszh)
  COPY TO ('.\zp\bmk'+cxxdm+'.dbf')
  CLOSE DATABASES
 
  IF FILE('bmk'+cxxdm+'.rar')
    ERASE ('bmk'+cxxdm+'.rar')
  ENDIF
  RUN /n7 winrar.exe a -ibck  -r -k -o+ -y bmk&cxxdm..rar .\zp\*.*
 
  MESSAGEBOX('上报文件已生成,请将已打包的文件 “bmk'+cxxdm+'.rar” 上报科技竞赛报名管理组委会!!!',64,'提示:')这是我程序中用到WINRAR的生成上报数据按钮里的部分代码
cxxdm 某个学校的代码变量,如001,则生成的数据表就是“BMK001.DBF”,放到ZP目录下后,与照片一起,压缩为BMK001.RAR上报




你好,我依葫芦画瓢。写了两个代码,有一个成功,另外一个失败。你帮忙看看,谢谢!

成功的代码如下:
程序代码:
SET DEFAULT TO d:\报价
tim = 'd:\数据备份\报价数据备份'-DTOC(DATE()-1,1)-'.rar'
RUN /N7 "WinRAR.exe" a -ibck &tim D:\报价\*.*


失败的代码如下:


程序代码:
SET DEFAULT TO d:\hyz
tim = 'd:\数据备份\hyz数据备份'-DTOC(DATE()-1,1)-'.rar'
RUN /N7 "WinRAR.exe" a -ibck &tim D:\hyz\*.prg


失败的提示为:命令失败,系统找不到指定文件。

这个tim索指定的文件在那边成功运行时也是新增的。tim的涉及就是需要每次运行有不同的文件生成。

后面d:\hyz\*.prg文件是有的,有很多PRG的文件。

还请帮忙看看要如何调整程序,谢谢!


现在的解决方案如下:

程序代码:

SET DEFAULT TO d:\报价
tim = 'd:\数据备份\报价数据备份'-DTOC(DATE()-1,1)-'.rar'
RUN /N7 "WinRAR.exe" a -ibck &tim D:\报价\*.*
wait 3600
RUN /N7 "WinRAR.exe" a -ibck &tim D:\hyz\*.prg


[此贴子已经被作者于2018-5-9 10:21编辑过]

2018-05-09 10:18
快速回复:VFP中压缩工具WinRAR的调用
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024189 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved