即使在运行ipy64.exe时,IronPython也始终在64位机器上以32位模式运行

时间:2013-05-07 15:23:16

标签: ironpython 32bit-64bit

我确信我遗漏了一些简单但不幸的是很多搜索没有被抛出的东西..

我正在运行Windows 7 64位(我通过查看控制面板>所有控制面板项目>系统并看到它显示64位操作系统来验证这一点。)

我从这里安装了IronPython 2.7.3(http://ironpython.codeplex.com/downloads/get/423690

这创建了以下快捷方式(在C:\ Program Files \ IronPython 2.7中没有相应的快捷方式......):

“C:\ Program Files(x86)\ IronPython 2.7 \ ipy64.exe”

如果我运行此命令,我会收到此提示:

"c:\Projects>"C:\Program Files (x86)\IronPython 2.7\ipy64.exe"
IronPython 2.7.3 (2.7.0.40) on .NET 4.0.30319.296 (32-bit)

来自http://ironpython.codeplex.com/releases/view/27350的旧版IronPython(2.6)的文档说:

“此版本中添加了一个非常明显的新功能,即ipy.exe现在严格来说只是一个32位的程序集。也就是说,它在x86和x64操作系统上作为32位CLR进程执行.ipy64 .exe,尽管它的名字可能暗示,是一个与ipy.exe的旧行为相匹配的平台无关组件,因为它在32位操作系统上以32位进程执行,在64位操作系统上以64位执行。“

据此,我推断ipy64应该以64位进程启动,但这不是提示中显示的内容。

任何想法我做错了什么?提前谢谢..

编辑添加:我还尝试在IronPython shell中运行以下内容,我从本网站的另一个问题中找到,检查操作系统是否为64位

>>> import System
>>> System.Environment.Is64BitOperatingSystem
True

...但后来我运行了以下内容,表明IronPython确实在32位模式下运行。

>>> import System
>>> System.IntPtr.Size
4

1 个答案:

答案 0 :(得分:0)

我有同样的问题。我发现你用来运行IronPython的shell很重要。 32位dos命令shell存在于C:\ Windows \ system32 \ cmd.exe中,而64位dos命令shell存在于C:\ Windows \ SysWOW64 \ cmd.exe中 (见下面的截图)

32 bit dos command shell 64 bit dos command shell