程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> ASP技巧 >> Win2003 64位下ASP連接Access數據庫的解決方法

Win2003 64位下ASP連接Access數據庫的解決方法

編輯:ASP技巧

隨著硬盤的升級,軟件的升級,64位系統越來越多被使用,以前的一些軟件不兼容性顯示出來了,像ASP連接Accesss數據庫編寫的程序就是一個不兼容的例子。


64位Windows 2003下面配置好IIS後,運行ASP頁面,如果裡面有連接Access數據庫的代碼,就會出現錯誤警告
ADODB.Connection 錯誤 '800a0e7a' 
未找到提供程序。該程序可能未正確安裝。 
/連接“網站內容管理”數據庫.ASP,行 2


原因:IIS是以64位方式來運行的,它只能加載64位模塊,不能加載32位模塊。而訪問Access數據庫的jet引擎只有32位的,沒有64位,因此無法被IIS加載。

解決思路:讓IIS以32位方式運行,從而可以調用32位的jet引擎 
解決方法:在命令行窗口輸入 
cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1 
上面方法的負面效應:因為IIS被改成以32位方式運行,所以它只能加載32位模塊。如果改之前,IIS加載了其他64位的模塊,則改之後就無法加載這個模塊了。如果想繼續使用這個模塊的功能,只能尋找這個模塊的32位版本並加載。

如果希望IIS重新以64位方式運行,可以輸入 
cscript C:\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved