我有一个非常基本的test.asp页面需要在64位服务器上运行
首先我试过
<!--METADATA TYPE="TypeLib" NAME="Microsoft ActiveX Data Objects 2.5 Library" UUID="{00000205-0000-0010-8000-00AA006D2EA4}" VERSION="2.5"-->
<%
.... more code
不起作用(即使我在COM中找到了引用) 我试试
<!--METADATA TYPE="TypeLib" NAME="Microsoft ActiveX Data Objects 2.8 Library" UUID="{2A75196C-D9EB-4129-B803-931327F72D5C}" VERSION="2.8"-->
<%
... more code
这可行,但为什么我不能在服务器上存在库时引用2.5版本?
答案 0 :(得分:2)
Josip几乎是正确的MDAC 2.5只有32位(2.8有64位的味道)。默认情况下,在64位服务器上,您的应用程序池将使用64位进程运行。它将在系统配置单元的64位版本中查找2.5类型库引用但不会找到它(仅在32位版本中)。
如果您编辑应用程序池设置以使其以32位运行,您应该会发现2.5引用将起作用。
答案 1 :(得分:0)
MDAC仅适用于32位。
您必须将应用程序更改为目标x86(默认情况下,它定位到AnyCPU)。它仍将在x64上运行,但内存空间较小。