VC程序里判断系统是64位还是32位的正确方法

BOOL IsWow64() 

    typedef BOOL (WINAPI *LPFN_ISWOW64PROCESS) (HANDLE, PBOOL); 
    LPFN_ISWOW64PROCESS fnIsWow64Process; 
    BOOL bIsWow64 = FALSE; 
    fnIsWow64Process = (LPFN_ISWOW64PROCESS)GetProcAddress( GetModuleHandle("kernel32"),"IsWow64Process"); 
    if (NULL != fnIsWow64Process) 
    { 
        fnIsWow64Process(GetCurrentProcess(),&bIsWow64);
    } 
    return bIsWow64; 

注意:此方法在程序编译时是用32位,则在64位下返回TRUE。如果编译时就是用64位,此函数在64位下返回为FALSE。

posted on 2012-03-29 15:01  蜗牛也是牛-晓  阅读(1444)  评论(2编辑  收藏  举报