如何在vc6中使用SetThreadUILanguage

来源:互联网 发布:百元内鼠标推荐 知乎 编辑:程序博客网 时间:2024/06/04 18:11
bool IsWin7()  
{  
    OSVERSIONINFOEX osvi;  
    BOOL bOsVersionInfoEx;  
    
    ZeroMemory(&osvi, sizeof(OSVERSIONINFOEX));  
    osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEX);  
    bOsVersionInfoEx = GetVersionEx((OSVERSIONINFO*) &osvi);  
    
    // win7的系统版本为NT6.1  
    if ( VER_PLATFORM_WIN32_NT == osvi.dwPlatformId &&    
        osvi.dwMajorVersion == 6 &&   
        osvi.dwMinorVersion == 1 )  
    {  
        return true;      
    }  
    else  
    {  
        return false;  
    }  
}  

typedef LANGID (WINAPI *FP_SetThreadUILanguage)(LANGID LangId);
LANGID SetThreadUILanguage(LANGID lcid)
{
    HMODULE hKernel32 = GetModuleHandle(_T("Kernel32.dll"));
    FARPROC pFn = GetProcAddress(hKernel32, "SetThreadUILanguage");
    
    FP_SetThreadUILanguage pSetThreadUILanguage = (FP_SetThreadUILanguage)pFn;
    if (pSetThreadUILanguage)
    {
        return pSetThreadUILanguage(lcid);
    }
    return 0;
}
原创粉丝点击