2013年9月15日 星期日

以 IE9 本地端網頁存取 ACCESS 資料庫失敗問題

升版 WIN7 後又發現一個問題, 就是以前為處理碩士論文中龐大的語音檔而寫的本地端網頁程式在 IE9 竟然無法動作, 也沒有錯誤訊息, 但在 IE8 卻可以, 我正急著用這套程式所用的技術解決工作上的問題, 真是傷腦筋. 起因其實是系統更新時不小心沒注意就從 IE8更新到 IE10了, 結果工作日誌系統的 FCKEditor 卻不能用, 退回 IE9 卻又可以, 所以真的會被 IE 這爛貨氣死 (而且很奇怪, 升完 WIN7是 IE8, 更新到 IE10 後取消更新竟然是退回 IE9 而非 IE8). 但話說回來, 它的 ActiveX 還蠻好用的, 用 ADODB 或 FSO 存取本地資料庫與檔案非常方便.
我找到 "cannot open ADODB connection" 這篇, 結果沒用. 後來找到 "MS ACCESS connection string" 這篇, 把 Javascript 連線字串由下列舊的 (for IE6/7) :

var strDsn="DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" + dbfile;

改為如下 :

var strDsn="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + dbfile;

發覺在 IE8 是 OK 的, 明天到公司再試試 IE9 行不行.

20130917 註 : 可以的, 但是因為我的電腦是 WIN7 64 位元, 結果會出現無法建立資料庫連線問題, 要到微軟 DOUNLOAD CENTER 下載 "Microsoft Access Database Engine 2010 可轉散發套件" 安裝後才行. 請參考這篇說明 : C# 編譯.cs檔 資料庫使用access 無法開啟 問題出在 'Microsoft.jet.oledb.4.0'提供者並未登入於本機電腦上

沒有留言 :