"cpp/win32/windows 32 64 check"의 두 판 사이의 차이

Redjini WiKi
< cpp‎ | win32
 
(차이 없음)

2017년 7월 3일 (월) 11:34 기준 최신판


Windows OS의 32bit 64bit 확인하기

소스
typedef BOOL (WINAPI *PISWOW64PROCESS    )(HANDLE, PBOOL);

INT GetWindowsOsBit(){
    #if _WIN64
        return 64;
    #endif

    #if _WIN32
        BOOL isWow64 = FALSE;

        PISWOW64PROCESS fIsWow64Process  = (PISWOW64PROCESS) GetProcAddress(GetModuleHandle(TEXT("kernel32")),"IsWow64Process");
        if(fIsWow64Process){
            if (!fIsWow64Process(GetCurrentProcess(), &isWow64)){
                return 32;
            }
            if(isWow64){
                return 64;
            }
        }
        return 32;
    #endif
}

BOOL IsWindowsOsBit64(){
    return GetWindowsOsBit()==64? TRUE: FALSE;
}
BOOL IsWindowsOsBit32(){
    return GetWindowsOsBit()==32? TRUE: FALSE;
}