/************************************************************************/
/* Function: GetWindowsOSVersion
/* Param: pVer pointer to TCHAR[128] buffer
/* Description:
/* Get Windows Operating System Version
/************************************************************************/
void GetWindowsOSVersion(TCHAR* pVer)
{
OSVERSIONINFO ovi;
ovi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
GetVersionEx(&ovi);
switch(ovi.dwPlatformId)
{
case 1:
{
switch(ovi.dwMinorVersion)
{
case 0:
_stprintf(pVer, "%s", "Windows 95 ");
break;
case 10:
_stprintf(pVer, "%s", "Windows 98 ");
break;
case 90:
_stprintf(pVer, "%s", "Windows Mellinneum ");
break;
}
_tcscat(pVer, ovi.szCSDVersion);
break;
}
case 2:
{
switch(ovi.dwMajorVersion)
{
case 3:
_stprintf(pVer, "%s", "Windows NT 3.51 ");
break;
case 4:
_stprintf(pVer, "%s", "Windows NT 4.0 ");
break;
case 5:
{
switch(ovi.dwMinorVersion)
{
case 0:
_stprintf(pVer, "%s", "Windows 2000 ");
break;
case 1:
_stprintf(pVer, "%s", "Windows XP ");
break;
case 2:
_stprintf(pVer, "%s", "Windows Server 2003 ");
break;
}
break;
}
}
_tcscat(pVer, ovi.szCSDVersion);
break;
}
default:
_stprintf(pVer, "%s", "OS cannot be recognized");
break;
}
}