IsWow64Process (kernel32)
Last changed: -186.136.223.176

.
Summary
Determines whether the specified process is running under WOW64. Some WinAPI functions work differently when running through WOW64, so you will sometimes need to know if a process is under the thunking layer.

C# Signature:

[DllImport("kernel32.dll", SetLastError = true, CallingConvention = CallingConvention.Winapi)]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool IsWow64Process(
     [In] SafeProcessHandle hProcess,        
     [Out] out bool lpSystemInfo
     );

Notes:

Requires Windows XP SP2, Windows Vista, Windows Server 2003 SP1 or Windows Server 2008

Tips & Tricks:

Please add some!

Sample Code:

isWow64 = false;
if (System.Environment.OSVersion.Version.Major >= 5 &&
     System.Environment.OSVersion.Version.Major >= 1)
{
     SafeProcessHandle processHandle = GetProcessHandle((uint)System.Diagnostics.Process.GetCurrentProcess().Id);
     bool retVal;
     if (!NativeMethods.IsWow64Process(processHandle, out retVal))
     {
     throw (new Win32Exception());
     }
     isWow64 = retVal;
}

Documentation