Tutorial :How to tell in .NET whether you are running on x86 or x64?


Is there a way in .NET (3.5 or less) to tell if a console application is running on x86 or x64?


Do you mean the machine or the process? Why do you want to know?

Aku's answer will tell you if the process you are in is running in a 64bit mode. On current versions of Windows this could mean either Itanuim or x64.

Your process won't necessarily be 64 bit even on a 64 bit machine/OS.

Othewise Microsoft.Build.Utilities.ProcessorArchitecture.CurrentProcessArchitecture returns a string with the current proc arch. It's in 3.5.


IntPtr.Size == 8 // 64bit  

If you don't mind to use interop, this function would help: IsWow64Process (example)


How about if I have an x64 and an x86 binary dependency on a console application.

Is there a way of deciding at runtime which reference is used dependant on whether we are running on x64 or x86?

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »