當MDB文件加了密碼,直接由Access打印MDB文件時,會出現密碼對話框,詢問密碼。但是若要由VB程序中打印,必須更改VB程序中打開MDB文件的指令,否則會出現錯誤信息!以下針對各種情況,分別加以說明:
1、使用DAO命令打開MDB文件:OpenDatabase
若要由程序中打開,命令如下:
SetDB=OpenDatabase(DatabaseName,False,False,";Pwd=密碼")
實例:
DimdbAsDatabase
Setdb=OpenDatabase("C:db1.mdb",False,False,";Pwd=1")
若要使用Data控件,設定方法如下:
1、設定DatabaseName屬性(MDB文件名稱/含路徑)
2、設定Connect屬性,將預設的字串"Access"改成";Pwd=密碼"(不含雙引號)
3、設定RecordSource屬性
2、
使用ADO命令打開MDB文件:
在使用ADODC或DataEnvironment設定好之後,直接利用屬性窗口修改ConnectionString屬性(附屬於ADODC)或ConnectionSource屬性(附屬於DataEnvironment的Connection控件),修改的方法是在屬性之後增加以下參數:
;JetOLEDB:DatabasePassWord=密碼
除了ADODC及DataEnvironment之外,直接使用ADO控件來打開含有密碼的mdbMDB文件,設定參數的方法也是相同的。
3、
壓縮加了密碼的MDB文件:CompactDatabase
DBEngine.CompactDataBase"原MDB文件","新MDB文件",,,";pwd=密碼"
實例例如:
DBEngine.CompactDatabase"C:Db1.mdb","C:Db2.mdb",,,";pwd=1"
4、
修復加了密碼的MDB文件:RepairDatabase
不必理會MDB文件設定的密碼!
DBEngine.RepairDataBase"MDB文件"
實例例如:
DBEngine.RepairDataBase"C:Db1.mdb"