我正在尝试部署GAL Modifier,这是一个在 Windows 2003 x64 机器上使用 Microsoft Access 的 ASP.NET 网站。但是 x64 上没有 JET 驱动程序(参见此处),因此更改是使用将目标 CPU 更改为 x86。
但是,由于它是一个网站,除了任何 CPU 之外,Visual Studio 中没有其他选项,那么如何更改设置以强制它使用 x86?
您应该将应用程序池设为 32 位。转到 IIS7 管理控制台中的应用程序池,右键单击您的应用程序池并选择“设置应用程序池默认值...”项。
在属性对话框中,将“启用 32 位应用程序”设置为“真”。
这将使应用程序池进程为 32 位(以 WOW64 模式运行)并在进程中加载 32 位版本的 .NET Framework。
在 IIS6 中,基本上同样适用。您应该切换到 32 位应用程序池以启用 32 位 ISAPI 扩展:
cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 "true"
此外,您需要将应用程序映射从文件夹内更改aspnet_isapi.dll
为文件夹内。应该做同样的事情。Framework64
aspnet_isapi.dll
Framework
aspnet_filter.dll
您可以在服务器上重新注册 ASP.NET,而不是手动更改 DLL 配置:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i -enable
您可能希望在该语句的末尾加上 1 或 0 而不是“真”
http://support.microsoft.com/kb/894435/en-us (这是一个旧链接,但您可以使用回程机器找到详细信息https://web.archive.org/web/20150131051556/http:// support.microsoft.com/kb/894435/EN-US/)
ASP.NET 1.1,32 位版本
要运行 32 位版本的 ASP.NET 1.1,请执行以下步骤:
单击开始,单击运行,键入 cmd,然后单击确定。
ASP.NET 2.0,32 位版本
要运行 32 位版本的 ASP.NET 2.0,请执行以下步骤:
单击开始,单击运行,键入 cmd,然后单击确定。
ASP.NET 2.0,64 位版本
要运行 64 位版本的 ASP.NET 2.0,请执行以下步骤:
在 iis 6.0 上,在您的左侧选择“应用程序池”,然后(在您的右侧)右键单击您的应用程序并单击“高级设置...”,在“启用 32 位应用程序”选项上,更改为没错,你准备好了!