如何在.NET中告诉您是在x86还是x64上运行?

时间:2009-01-21 11:56:22

标签: .net

在.NET(3.5或更低版本)中是否有办法判断控制台应用程序是在x86还是x64上运行?

3 个答案:

答案 0 :(得分:12)

IntPtr.Size == 8 // 64bit

如果您不介意使用互操作,此功能会有所帮助:IsWow64Processexample

答案 1 :(得分:3)

您的意思是机器还是过程?你为什么想知道?

Aku的回答将告诉您您所处的进程是否以64位模式运行。在当前版本的Windows上,这可能意味着Itanuim或x64。

即使在64位计算机/操作系统上,您的进程也不一定是64位。

Othewise Microsoft.Build.Utilities.ProcessorArchitecture.CurrentProcessArchitecture返回一个包含当前proc arch的字符串。它在3.5。

答案 2 :(得分:0)

如果我在控制台应用程序上有x64和x86二进制依赖关系怎么样。

有没有办法在运行时决定使用哪个引用取决于我们是在x64还是x86上运行?