由于64位作業系統不支援Microsoft OLE DB Provider for Jet驅動程式,也不支援更早的Microsoft Access Driver (*.mdb)方式連接配接。是以用于 Access 和 Excel 資料庫的 Microsoft OLE DB Provider for Jet 在 64 位版本中不可用,也就是說,如下兩種連接配接字元串都已經無法正常工作了:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.mappath(db)
"driver=Microsoft Access Driver (*.mdb);DBQ="&Server.MapPath(db)
既然這樣,就隻能使用一個辦法,将IIS的運作環境設定為32位:
IIS6上的做法:
1.指令行鍵入:
cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
即設定IIS6允許32位程式運作在64位機器上
2.重新注冊.net FrameWorks
%SYSTEMROOT%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
3.完成之後,應該會看到多出一個32位的asp.net,如下圖:
将其設定為允許,缺點:這樣會使整個IIS上的所有站點都以32位相容方式運作
IIS7上的做法要簡單很多:
應用程式池,進階設定-->允許32位應用程式,如下圖: