执行程序组运行为32或64

时间:2011-02-07 17:33:35

标签: assembly

有没有办法判断执行程序集是在32位还是64位运行?我理解如何判断它是否被编译为ILOnly,x86等,如果操作系统运行32或64.我仍然有一个dll,因为主机应用程序运行32位,64位操作系统上的AnyCPU仍然运行为32位。那么,有没有一种方法可以判断它是运行32还是64?谢谢!

1 个答案:

答案 0 :(得分:2)

您可以在.NET 4中调用Environment.Is64BitProcess

在.NET 3.5及更早版本中,最简单的方法是检查IntPtr的大小:

bool is64Bit = IntPtr.Size == 8;

如果上述任何一个为假,则程序以32位可执行文件的形式运行。