#include "windows.h"
〜〜〜〜〜〜〜〜
OSVERSIONINFOA osVerInfo;
/* OSの取得 */
osVerInfo.dwOSVersionInfoSize = sizeof(osVerInfo);
GetVersionExA(&osVerInfo);
/* OS情報の取得 */
switch(osVerInfo.dwPlatformId)
{
case VER_PLATFORM_WIN32_NT: //Windows NT系(NT/2000/XP/vista/7)
if(osVerInfo.dwMajorVersion <= 4)
{
MessageBox( hWnd, "Windows NTは、サポート外です。", "OS判定チェック", MB_OK );
}
else{ //2000/XP/vista/7
//ここからは、サポート内
if(osVerInfo.dwMajorVersion == 5)
{//2000 or XP
switch(osVerInfo.dwMinorVersion)
{
case 0: MessageBox( NULL, "Windows 2000です。", "OS判定チェック", MB_OK ); break; //windows 2000
case 1: MessageBox( NULL, "Windows XPです。", "OS判定チェック", MB_OK ); break; //windows XP
case 2: MessageBox( NULL, "Windows 2003 Serverです。", "OS判定チェック", MB_OK ); break; //windows XP
}
}
else if(osVerInfo.dwMajorVersion == 6)
{
switch(osVerInfo.dwMinorVersion)
{
case 0: MessageBox( NULL, "Windows Vistaです。", "OS判定チェック", MB_OK ); break; //windows XP
case 1: MessageBox( NULL, "Windows 7です。", "OS判定チェック", MB_OK ); break; //windows 7
default:MessageBox( NULL, "Windows 7以降のOSです。", "OS判定チェック", MB_OK ); break; //windows 7以降のOS
}
}
else{
MessageBox( NULL, "Windows 7以降のOSです。", "OS判定チェック", MB_OK ); //windows 7以降のOS
}
}
break;
case VER_PLATFORM_WIN32_WINDOWS: //Windows 9X系
default: //(windows3.1や、Windows CEの場合ここに来ます。)
MessageBox( NULL, "サポート外のOSです。", "OS判定チェック", MB_OK ); //Windows 9X系、windows3.1、Windows CE
break;
}
|