如何检查IIS是否处于32位或64位模式

时间:2010-05-10 15:41:11

标签: asp.net iis-6

我正在尝试将网站部署到64位操作系统。我正在部署到IIS6。该网站是在32位服务器上开发的。该站点已正确部署,但它正在尝试访问COM组件并且失败。

我相信错误正在发生,因为COM组件是64位操作系统上的64位版本。 IIS6在64位服务器上以32位模式运行。

我想确认这一点,但我似乎无法找到确定IIS6是处于32位模式还是64位模式的明确方法。

有人知道检查IIS6是否处于64位或32位模式的最佳方法吗?

编辑:我正在使用IIS6

5 个答案:

答案 0 :(得分:50)

转到IIS管理器 - >应用程序池 - >选择您想要的apppool,然后选择>高级设置。

在那里有一个叫做启用32位应用的设置。如果这是真的,那意味着工作进程被强制以32位运行。如果设置为false,则apppool以64位模式运行。

您也可以打开任务管理器并检查w3wp.exe。如果它显示为w3wp * 32.exe则为32位。

更多信息here

答案 1 :(得分:10)

哪个版本的IIS?要手动检查它,只需单击属性或高级属性中的应用程序池

如果你需要以编程方式检查它,你可以通过WMI进行检查:

上的

/ LM / W3SVC命名空间

IIsWebService类

Enable32BitAppOnWin64属性

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/5d306956-b2a2-4708-9bb9-72a395d474bb.mspx?mfr=true

答案 2 :(得分:6)

在.NET代码(V4之前版本)中,您可以检查IntPtr实例的大小。

在V4中,选中Environment.Is64BitProcessEnvironment.Is64BitOperatingSystem属性。

答案 3 :(得分:1)

对于IIS6,您可以运行此命令:

C:\的Inetpub \ AdminScripts> cscript adsutil.vbs获取W3SVC / AppPools / Enable32BitAppOnWin64

答案 4 :(得分:1)

使用以下命令转到IIS:运行命令->键入“ inetmgr”,请参阅应用程序池设置, 选择您的应用程序框架 单击右侧菜单选项上的高级设置 请参阅“启用32位应用程序”选项

  

如果“启用32位应用程序”-“ TRUE”,则您的应用程序将执行   在32位中,如果为“ FALSE”,则在64位中执行

enter image description here