概述根据一个窗口句柄,检查这个窗口所在的进程是32位还是64位。/* * WOW64 (Windows-on-Windows 64-bit)是一个Windows操作系统的子系统, * 它为现有的 32 位应用程序提供了 32 位的模拟,可以使大多数 32 位 * 应用程序在无需修改的情况下运行在 Windows 64 位版本上。 */typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL);BOOL IsWow64(HANDLE hProcess){ BOOL bIsWow64 = FALSE; LPFN_ISWOW64PROCESS fnIsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress(GetModuleHandle(TEXT("kernel32")), "IsWow64Process"); if (NULL != fnIsWow64Process) { if (!fnIsWow64Process(hProcess,&bIsWow64)) { // handle error } } return bIsWow64;}/* * 检查窗口所在进程的位数 * 返回值: * true : 64位程序 * false : 32位程序 */bool Is64Wnd(HWND hWnd){ DWORD processId; DWORD dwThreadId = GetWindowThreadProcessId(hWnd, &processId); if (!dwThreadId) return false; HANDLE hProcess = ::OpenProcess(PROCESS_ALL_ACCESS, FALSE, processId); if(!hProcess) return false; bool result = (TRUE == IsWow64(hProcess)) ? false:true; ::CloseHandle(hProcess); return result;}