以前在XP下寫程序連接ACCESS數(shù)據(jù)庫一直沒發(fā)現(xiàn)什么問題,后來使用windows7后,發(fā)現(xiàn)在windows7環(huán)境下編譯出來的連接數(shù)據(jù)庫的程序放到XP下會出現(xiàn)連接失敗的現(xiàn)象。曾試過多種解決辦法,比如更換編譯器版本、重寫連接數(shù)據(jù)庫類庫,均不能解決,當時解決方法只能用笨方法,就是再虛擬機中再虛擬出一個XP,專門用來編譯。谷歌也找不出相關資料,只能自己動手解決。在回頭看代碼的時候,發(fā)現(xiàn)“import C:\Program Files\Common Files\System\ado\msado15.dll”加載ado驅動的這條語句,會不會是windows7下的msado15.dll與windows xp下的不符呢,嘗試把xp下的msado15.dll復制過來,修改一下import路徑,重新編譯后,問題解決,XP下完美運行?,F(xiàn)在想想原因,應該是windows 7下的驅動版本比較高,XP下不識別,而xp下編譯的在windows7下會兼容(向下兼容)。
把xp系統(tǒng)下的msado15.dll、msjro.dll文件復制到win7下,放到工程文件夾下,然后修改代碼中import的引用路徑。這樣就可以編譯運行了。
#import "msado15.dll" rename("EOF", "adoEOF")
#import "msjro.dll" no_namespace rename("ReplicaTypeEnum", "_ReplicaTypeEnum")
沒有xp的請到這里下載
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請
點擊舉報。