CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  API

请高手帮我看看这个小小东东呢~~

楼主kyuu(kuyu)2004-05-03 11:51:58 在 VB / API 提问

我想进行文件考备:  
  使用了api  
  Private   Declare   Function   CopyFile   Lib   "kernel32"   Alias   "CopyFileA"   (ByVal   lpExistingFileName   As   String,   ByVal   lpNewFileName   As   String,   ByVal   bFailIfExists   As   Long)   As   Long  
   
  Private   Sub   cmd_back_data_Click()  
  Dim   filecopy   As   Long  
  If   con.State   =   adStateOpen   Then  
          con.Close  
  End   If  
  Set   con   =   Nothing  
  With   CommonDialog1  
                          .DialogTitle   =   "打开"  
                          .CancelError   =   False  
                          .InitDir   =   ""   &   App.Path   &   "\Backup\"  
                          .Filter   =   "数据库文件(*.mdb)|*.mdb|All   Files(*.*)|*.*"  
                          .ShowOpen  
                          If   Len(.FileName)   =   0   Then  
                                  Exit   Sub  
                          End   If  
                          sfile   =   .FileName  
          End   With  
          If   MsgBox("确定要用备份数据覆盖当前数据吗?",   vbYesNo   +   vbQuestion,   "提示")   =   vbYes   Then  
                   
                  filecopy   sfile,   App.Path   &   "\data\yiwusi.mdb"    
                  MsgBox   "恢复完毕     ",   vbInformation,   "数据恢复"  
                   
          Else  
                  Exit   Sub  
          End   If  
  End   Sub  
   
   
  ————————————————————————————————  
  filecopy   sfile,   App.Path   &   "\data\yiwusi.mdb"  
  这是用filecopy   函数来实现的  
  但是动行时指示     07,拒绝权限  
   
  那请问用api  
  copyfile   的三个参数怎么用~~  
  急啊  
  问题点数:0、回复次数:12Top

1 楼lsftest()回复于 2004-05-03 12:40:52 得分 0

filecopy   sfile,   App.Path   &   "\data\yiwusi.mdb"  
  这是用filecopy   函数来实现的  
  但是动行时指示     07,拒绝权限  
  ===================  
  1.是不是在filecopy前你那个数据库文件还没有完全关闭???用任务管理器看看有没有它的进程。  
  2.确定你在App.Path   &   "\data\yiwusi.mdb"路径下有写权限。Top

2 楼yinweihong()回复于 2004-05-03 17:04:19 得分 0

如果想要对一个已打开的文件使用FileCopy语句,则会产生错误。  
  用shell   "command.com   /c   sfile,App.path   &   "\data\yiwusi.md""试试Top

3 楼yinweihong()回复于 2004-05-03 17:10:21 得分 0

shell   "command.com   /c   copy   sfile,App.path   &   "\data\yiwusi.md""Top

4 楼chenyu5188(来自东方的狼)回复于 2004-05-03 18:18:24 得分 0

出错的原因可能是那个文件并没有完全关闭,还有应用程序正在使用。Top

5 楼sakurako(看晨雾散开,你就是我一生的最爱...)回复于 2004-05-06 09:02:26 得分 0

同意Top

6 楼online(龙卷风V4.0--决战江湖(MS MVP-VB))回复于 2004-05-06 11:05:40 得分 0

这个与copyfile没有关系  
  看你的mdb文件是否关闭Top

7 楼pigpag(Pigpag - A GRE Fighter)回复于 2004-05-06 23:06:19 得分 0

还有就是你是否拥有\data\yiwusi.mdb的写入权。(虽然相信是有的,还是要提醒一下)Top

8 楼BlueBeer(1win)回复于 2004-05-07 18:54:59 得分 0

用DOS命令可以复制已打开的文件  
  按2楼代码做Top

9 楼junglerover(灌木丛)回复于 2004-05-07 19:27:09 得分 0

使用FSO就完了。比用DOS命令还简单。  
   
  set   fsoObj   =   CreateObject("Scripting.FileSystemObject")  
  call   fsoObj.copyfile(   sfile,   App.Path   &   "\data\yiwusi.mdb")  
  Top

10 楼boyzhang(张郎)(爱你爱到Windows没BUG的那天)回复于 2004-05-07 19:49:05 得分 0

upTop

11 楼kissoflife(明月高楼休独倚,酒入愁肠,化作相思泪!)回复于 2004-05-08 02:47:13 得分 0

文件被其它程序打开,或者当前程序对数据库的连接尚未断开。后一种的可能性更大Top

12 楼kmzs(.:RNPA:.山水岿濛)回复于 2004-05-08 07:19:06 得分 0

嗯支持楼上Top

相关问题

  • wangxd(东东) 请进
  • 东东兄请进!!!
  • 这个东东能实现吗?请各位帮帮忙!!!
  • 请大家帮我找一下恢复Excel文件的东东!
  • 请大家帮忙,作个简单的东东
  • 各位请帮个忙!这个好东东我却不会用!高分求救!
  • 初次使用.net特性,请大家帮个忙,先介绍几个东东。
  • 一个小小的问题,DW是什么东东?
  • *.BPl的东东 帮忙看看
  • 谁帮我写个小东东啊>!>!@@@@@@@@@@@@@@@@@@

关键词

  • 文件
  • 数据
  • yiwusi
  • sfile
  • filecopy
  • mdb
  • copyfile
  • app
  • 打开
  • con

得分解答快速导航

  • 帖主:kyuu

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo