LMY

IOS Android C# Python Silverlight Flex HTML5 WCF GIS .NET.....现已博客已移至http://blog.512z.com

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  48 随笔 :: 2 文章 :: 69 评论

输入两行命令 将IIS转成32位

 

ASP.NET 1.1,32 位版本

要运行 32 位版本的 ASP.NET 1.1,按照以下步骤操作:

  1. 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
  2. 键入以下命令启用 32 位模式:
    cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
  3. 键入以下命令,安装 ASP.NET 1.1 版本并在 IIS 根目录下安装脚本映射:
    %SYSTEMROOT%\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i
  4. 确保在 Internet 信息服务管理器的 Web 服务扩展列表中,将 ASP.NET 版本 1.1.4322 的状态设置为允许

ASP.NET 2.0,32 位版本

要运行 32 位版本的 ASP.NET 2.0,请按照以下步骤操作:

  1. 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
  2. 键入以下命令启用 32 位模式:
    cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1
  3. 键入以下命令,安装 ASP.NET 2.0(32 位)版本并在 IIS 根目录下安装脚本映射:
    %SYSTEMROOT%\Microsoft.NET\Framework\v2.0.40607\aspnet_regiis.exe -i
  4. 确保在 Internet 信息服务管理器的 Web 服务扩展列表中,将 ASP.NET 版本 2.0.40607(32 位)的状态设置为允许

ASP.NET 2.0,64 位版本

要运行 64 位版本的 ASP.NET 2.0,请按照以下步骤操作:

  1. 单击“开始”,单击“运行”,键入 cmd,然后单击“确定”。
  2. 键入以下命令禁用 32 位模式:
    cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0
  3. 键入以下命令,安装 ASP.NET 2.0 版本并在 IIS 根目录下安装脚本映射:
    %SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.40607\aspnet_regiis.exe -i
  4. 确保在 Internet 信息服务管理器的 Web 服务扩展列表中,将 ASP.NET 版本 2.0.40607 的状态设置为允许

注意:ASP.NET 2.0 的内部版本可能随当前发行的内部版本的变化而变化。这些步骤适用于内部版本 2.0.40607。

http://support.microsoft.com/kb/894435

 

 

 

 

 

 问题二:x32程序访问x64oracle

windows x64平台部署32位asp程序及连接oracle 10g数据库


32位asp程序在x64平台上的安装以及连接oracle 10g数据库的若干问题记录

业务系统应用组件仍然是在32位windows平台上运行的,后端数据库oracle 10g已经在64位平台上运行。新的服务器硬件配置很高,再安装32位的windows实在是太浪费资源了。

windows 2003 x64 r2上的iis6支持在32位模式下运行asp程序,只需执行一下指令打开此模式即可

cmd>cscript.exe %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

这样就可以像32位平台一样来部署asp应用了,此时32位asp应用程序运行在WOW64模拟环境下。

但是这种模式下32位应用程序访问oracle 10g数据库就要注意了,经过多次实验,总结如下:
x64平台下的32位应用程序要访问oracle 10g数据库,只能安装32位版本的oracle 10g或其他版本32位客户端,如果在本机安装服务器端也只能安装32位的oracle 10g服务器。

原因有二:其一,32位应用的程序的注册表被重定向到了Wow6432Node节点下,所以32位应用程序无法访问到64位oracle客户端或者服务器的注册表内容。其次,x64平台上,32位进程不能加载64位Dll,64位进程也不可以加载32位Dll。也就是说,就算能从注册表里能找到64位oracle客户端或服务器的信息,但是仍然无法将其加载,也就无法连接访问。

如果在两台机器之间访问oracle服务则几乎没有任何限制,两边的客户端和服务器端可以跨异构异质平台,因为TCP是天然跨平台的。

 

posted on 2011-08-12 12:02  李明杨  阅读(1843)  评论(0编辑  收藏