蘭庭論壇

標題: 解決Windows Server x64中IIS無法存取Access DataBase問題 [打印本頁]

作者: 李亮寬    時間: 2013-12-26 23:16
標題: 解決Windows Server x64中IIS無法存取Access DataBase問題
由於資網中心94年撥入的IBM伺服器已使用近十年

雖還正常服役但就像人老了多少會出毛病一樣,總是要預做準備免得掛掉時措手不及

因此添購一台HP DL320e,並附加採購了Server 2012 R2 x64 位元教育版

當一切安裝妥當,將學校網頁掛上測試後發現只要是ASP程式加Access資料庫都無法運作

查微軟官網才知道原來x64 ODBC不支援32位元的Access資料庫,所以也就無法讀取到資料

也就是ASP資料庫讀取程式都無效
Set conn = Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("學生出缺席.mdb")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath



天啊~難不成所有資料庫都一定要轉到SQL server Express上面,然後十幾年來的所有ASP改寫加除錯可是大工程啊

但server控制台裏明明就有出現64及32位元的ODBC支援,放好看的嗎?

再經過努力不懈繼續查資料後發現原來雖然有這功能,但x64的IIS裏面預設是不開啟的,要自己手動開啟

就跟讀取上層目錄一樣的,預設是不開啟的 (X的,害我花那麼多時間,官網上只說不支援也不寫解決辦法)

所以在Server x64的iis中要使用32bit的odbc driver的話

要做下列設定 :

iis應用程式集區->設定應用程式集區預設值->啟用32位元應用程式這個選項設成true





snap.jpg (81.63 KB, 下載次數: 296)

snap.jpg





歡迎光臨 蘭庭論壇 (http://120.101.203.2/) Powered by Discuz! X3.2