| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2446 人关注过本帖
标题:调用winrar压缩备份问题
只看楼主 加入收藏
yafengliang
Rank: 2
等 级:论坛游民
帖 子:111
专家分:35
注 册:2016-2-21
结帖率:54.55%
收藏
 问题点数:0 回复次数:8 
调用winrar压缩备份问题
If Empty(thisform.pageframe1.page1.text1.value)
    = Messagebox("请选择需要备份的目录后,再开始备份!",0+64,"系统提示")
    Return
Endif
If Empty(thisform.pageframe1.page1.text3.value)
    = Messagebox("请指定文件存放目录后,再开始备份!",0+64,"系统提示")
    Return
Endif
 CLOSE DATABASES
 
CommChr = "WinRAR.exe a - r" + thisform.pageframe1.page1.text3.value+;
thisform.pageframe1.page1.text2.value + Space(1)+;
thisform.pageframe1.page1.text1.value + "\*.*"
Run /N7 &Commchr
= Messagebox("指定目录下的所有文件及目录已全部备份成功!",0+64,"系统提示")


总是提示:文件名,目录名或卷标语法不正确,无法创建。
搜索更多相关主题的帖子: winrar 
2016-05-24 23:21
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:0 
检查commchr的值,看看是否符合要求。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2016-05-25 06:30
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
这样可以吗:
Run /N7 "&Commchr"
或:
Run /N7 [&Commchr]
不可以的话就不能用RUN命令了,可用API ShellExecute 或 ShellExecuteEx
2016-05-25 07:35
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
你是要在备份时生成一个压缩包?

只求每天有一丁点儿的进步就可以了
2016-05-25 08:37
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 

  RUN /n7 winrar.exe a -ibck -ep1 -r -k -o+ -y &cdlmc..rar .\&cdlmc.\*.*    &&&&调用WinRAR将目录(&cdlmc.)中的文件进行压缩
还需要把 winrar.exe  rarext.dll 二个文件拷贝到当前目录中




只求每天有一丁点儿的进步就可以了
2016-05-25 08:45
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
*!*      *注释
*!*      *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年为写代码,从网上找来的。
5楼的那一句是我程序中在用的。一直是很顺利的

[此贴子已经被作者于2016-5-25 08:51编辑过]


只求每天有一丁点儿的进步就可以了
2016-05-25 08:46
aaaaaa
Rank: 8Rank: 8
等 级:贵宾
威 望:21
帖 子:796
专家分:937
注 册:2012-9-4
收藏
得分:0 
现在 Win 7(+) 都自带压缩/减压的功能,没有必要再调用外部的第三方程序

可以用 oShell = Createobject("Shell.Application") 直接引用

*!*    ******************************************
*!*     能:压缩文件函数。支持通配符,如*.prg,*.fr?等,支持子文件夹。
*!*            注意:此函数将覆盖已存在的zip文件,使用前应检查zip文件是否存在。
*!*    函数名:Zip(cSourceFile,cZipFileName[,cPassword])
*!*    返回值:逻辑值,压缩成功,返回真。
*!*     数:cSourceFile:字符型,准备压缩的文件列表,可以使用通配符,
*!*            不同文件使用|分隔,推荐使用相对路径,可以保存相对的路径信息,
*!*            如果使用绝对路径,则所有路径信息会被删除。
*!*            cZipFileName:字符型,要生成的压缩文件,比如Test.zip,可以使用相对路径或绝对路径。
*!*     型:字符型。
*!*    默认值:无。
*!*     例:lcZip = Zip("C:\temp\", "C:\Test.ZIP")  && 压缩C:\temp\所有文件所到C:\Test.ZIP
*!*    ******************************************
Function Zip(cSourceFile As String, cZipFileName As String)


*!*    ******************************************
*!*     能:解压缩单个文件。
*!*    函数名:UnZip(cZipFileName, cDestination)
*!*    返回值:逻辑值,压缩成功,返回真。
*!*     数:cZipFileName:字符型,待解压的Zip文件名
*!*            cDestination:字符型,在zip中要解压的文件名
*!*     型:字符型。
*!*    默认值:无。
*!*     例:lcUnZip = UnZip("C:\Test.ZIP", "C:\Temp\")  && 解压缩C:\Test.ZIP所有文件所到C:\temp\
*!*    ******************************************
Function UnZip(cZipFileName As String, cDestination As String)

如果需要,我贴出源码。

民工子弟学校22班团小组长阳光模特队长冲锋篮球队前锋小苹果合唱队领唱蓝天舞蹈队编舞
2016-05-25 09:02
hyswcyh
Rank: 8Rank: 8
等 级:贵宾
威 望:20
帖 子:391
专家分:896
注 册:2004-11-23
收藏
得分:0 
以下是引用aaaaaa在2016-5-25 09:02:22的发言:

现在 Win 7(+) 都自带压缩/减压的功能,没有必要再调用外部的第三方程序

可以用 oShell = Createobject("Shell.Application") 直接引用

*!*    ******************************************
*!*     能:压缩文件函数。支持通配符,如*.prg,*.fr?等,支持子文件夹。
*!*            注意:此函数将覆盖已存在的zip文件,使用前应检查zip文件是否存在。
*!*    函数名:Zip(cSourceFile,cZipFileName[,cPassword])
*!*    返回值:逻辑值,压缩成功,返回真。
*!*     数:cSourceFile:字符型,准备压缩的文件列表,可以使用通配符,
*!*            不同文件使用|分隔,推荐使用相对路径,可以保存相对的路径信息,
*!*            如果使用绝对路径,则所有路径信息会被删除。
*!*            cZipFileName:字符型,要生成的压缩文件,比如Test.zip,可以使用相对路径或绝对路径。
*!*     型:字符型。
*!*    默认值:无。
*!*     例:lcZip = Zip("C:\temp\", "C:\Test.ZIP")  && 压缩C:\temp\所有文件所到C:\Test.ZIP
*!*    ******************************************
Function Zip(cSourceFile As String, cZipFileName As String)


*!*    ******************************************
*!*     能:解压缩单个文件。
*!*    函数名:UnZip(cZipFileName, cDestination)
*!*    返回值:逻辑值,压缩成功,返回真。
*!*     数:cZipFileName:字符型,待解压的Zip文件名
*!*            cDestination:字符型,在zip中要解压的文件名
*!*     型:字符型。
*!*    默认值:无。
*!*     例:lcUnZip = UnZip("C:\Test.ZIP", "C:\Temp\")  && 解压缩C:\Test.ZIP所有文件所到C:\temp\
*!*    ******************************************
Function UnZip(cZipFileName As String, cDestination As String)

如果需要,我贴出源码。



需要,请给你源码学习学习!谢谢~!
2016-08-31 11:01
红星二锅头
Rank: 8Rank: 8
等 级:贵宾
威 望:46
帖 子:491
专家分:754
注 册:2016-8-25
收藏
得分:0 
以下是引用hyswcyh在2016-8-31 11:01:41的发言:




需要,请给你源码学习学习!谢谢~!


这里好像有:
http://www.

团队红星二锅头,队长王猛,领队李冲,顾问杨伟,副队张挺,外联马彪,内勤韩秀,人事顾闯,财务赵魁,后勤周强
2016-09-01 09:21
快速回复:调用winrar压缩备份问题
数据加载中...
 
   



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

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