我有filecopy复制一个数据库到另一个目录,出现错误,错误表现为“实时错误70,拒绝的权限”,请问这如何解决?附源码(103字)

hujun2345 2002-04-15 10:31:11
Dim xtlj As String
dim dqklj As string
xtlj = App.Path + "\"
dqklj = xtlj & "data\" & "aaa.mdb"
FileCopy xtlj & "ztxx.mdb", dqklj
...全文
68 点赞 收藏 9
写回复
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingofcats 2002-04-15
呵....来晚了.
回复
qiqif 2002-04-15
能不能给我发份“一种不需要关闭”的原码?
email:qiqif@etang.com
回复
vbsnake 2002-04-15
如果你要原码留个email
回复
y1g1y1 2002-04-15
使用API :
Private Declare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long

可以在源文件打开的情况下挎贝文件。
回复
vbsnake 2002-04-15
拷贝有两种
一种不需要关闭
Private Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" (lpFileOp As SHFILEOPSTRUCT) As Long
或一种是必须关闭数据库
filecopy
回复
gump2000 2002-04-15
If txtOut.Text = "" Then
MsgBox "请输入备份文件名!", vbExclamation, "提示"
Exit Sub
End If
If FileExists(txtOut.Text) Then
If MsgBox(txtOut.Text & "已经存在,是否要覆盖?", vbQuestion + vbYesNo, "提示") = vbNo Then Exit Sub
On Error GoTo out_err
Kill txtOut.Text
End If
BACKCnn.Close '这个就是关闭连接,看您的打开了多少个连接全部关闭,我使用一个连接打开这个数据库的
FileCopy BACKDATABASE, txtOut.Text
If BACKCnn.State = adStateClosed Then BACKCnn.Open BackUpCnnString'备份以后重新打开,以便其他过程调用

MsgBox "备份文件导出成功!", vbExclamation, "提示"
Unload Me
Exit Sub
out_err:
MsgBox "备份文件导出错误!错误代码:" & vbCrLf & Error(Err), vbCritical, "错误"
If BACKCnn.State = adStateClosed Then BACKCnn.Open BackUpCnnString'失败也打开原来的数据库连接
Exit Sub
回复
jienao 2002-04-15
看看你要拷贝的文件夹下是否有aaa.ldb存在,如果存在则表明aaa.mdb正在被打开(可能是数据库连接或文件打开)。
那么正如gump2000(阿甘) 所说,关闭它然后拷贝,当然如果是程序数据库连接,则在程序中
cn.Close
Set cn = Nothing
如果是文件打开,那么,关闭之!
回复
hujun2345 2002-04-15
我是菜鸟,请问一下用什么来关闭连接啊?
回复
gump2000 2002-04-15
copy前关闭所有连接看看
回复
发动态
发帖子

1180

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
社区公告
暂无公告