본문 바로가기
Programming/Win_API

Windows 버전 구별 - GetVerion()

by bbolmin 2014. 1. 21.



GetVersion에 대한 리턴 값(DWORD)으로 Build Number, Major Version,  Minor Version가 들어 있음.


 _______________________________________

|     build number     |   minor   |   major   |

 ---------------------------------------



    DWORD dwVersion = 0; 
    DWORD dwMajorVersion = 0;
    DWORD dwMinorVersion = 0; 
    DWORD dwBuild = 0;

    dwVersion = GetVersion();
 
    dwMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion)));
    dwMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion)));
    dwBuild = (DWORD)(HIWORD(dwVersion));






[*] MajorVersion, MinorVersion에 대응하는 Windows 버전은 아래와 같다.



Operating systemVersion numberdwMajorVersiondwMinorVersionOther
Windows 8.16.3*63OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATION
Windows Server 2012 R26.3*63OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATION
Windows 86.262OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATION
Windows Server 20126.262OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATION
Windows 76.161OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATION
Windows Server 2008 R26.161OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATION
Windows Server 20086.060OSVERSIONINFOEX.wProductType != VER_NT_WORKSTATION
Windows Vista6.060OSVERSIONINFOEX.wProductType == VER_NT_WORKSTATION
Windows Server 2003 R25.252GetSystemMetrics(SM_SERVERR2) != 0
Windows Server 20035.252GetSystemMetrics(SM_SERVERR2) == 0
Windows XP5.151Not applicable
Windows 20005.050Not applicable



ref : http://msdn.microsoft.com/en-us/library/windows/desktop/ms724834(v=vs.85).aspx