使用论坛自定义函数access,如何打开带密码的mdb文件【以解决】
本帖最后由 hhy02111 于 2012-5-18 18:47 编辑问题如上,没有密码的文件都能正常打开,带密码后就提示出错,请问如何解决
UserInclude\Access.au3 (709) : ==> ??????(?????).:
$oADO.Open($adSource)
$oADO.Open($adSource)^ ERROR 回复 1# hhy02111
没研究过这个,之前三千兄研究过这个话题,你看看有没有帮助
http://www.autoitx.com/forum.php?mod=viewthread&tid=31870&highlight=access 看看参数吧·· 参数里可以写密码的·~·。。。。 回复 2# 502762378
之前也读过他写的那篇文章,包括他引用的,只是感觉论坛的自定义函数比较好用,所以才想用用,但是牵扯到密码问题,比较挠头 本帖最后由 user3000 于 2012-5-16 17:42 编辑
回复 4# hhy02111
那你编辑下 AU3 安装目录下 UserInclude\Access.au3
将 _dbOpen 函数的内容更换如下的就可以了
Func _dbOpen($adSource, $password = Default)
If IsObj($oADO) Then
$oADO = ObjGet('', $oADO)
Else
$oADO = ObjCreate("ADODB.Connection")
$oADO.Provider = _adoProvider()
If $password = Default Then
$oADO.Open($adSource)
Else
$oADO.Open("Data Source=" & $adSource & ";Jet Oledb:Database Password=" & $password)
EndIf
EndIf
Return $oADO
EndFunc ;==>_dbOpen
最好还加入容错代码, 因为如果数据库密码不正确时, 程序可能会因对象错误而崩溃! 用Persist Security Info=False;Jet OLEDB:Database Password=123456;Data Source替换access里的data sourec,提示这个错误
Access1.au3" (486) : ==> ???????????("Object").:
While Not $oRec.EOF
While Not $oRec^ ERROR 学习学习,长点见识 哈,谢谢,方法可行,但还是有些问题,最后直接把密码写入你给的 _dbOpen函数里测试成功,希望下次更新论坛函数的时候能改下这个问题。 哈,谢谢,方法可行,但还是有些问题,最后直接把密码写入你给的 _dbOpen函数里测试成功,希望下次更新论坛函数的时候能改下这个问题。 回复 5# user3000
谢谢了,基本搞定了~~!!
页:
[1]