Supporto Win 8
git-svn-id: svn://10.65.10.50/branches/R_10_00@22772 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
948465ced7
commit
6c3e262edd
@ -44,16 +44,6 @@ static LONG GetNextNameValue(HKEY key, LPCTSTR subkey, LPTSTR szName, LPTSTR szD
|
||||
// defines used by GetWinVer()
|
||||
#define WUNKNOWNSTR _T("unknown Windows version")
|
||||
|
||||
#define W95STR _T("Windows 95")
|
||||
#define W95SP1STR _T("Windows 95 SP1")
|
||||
#define W95OSR2STR _T("Windows 95 OSR2")
|
||||
#define W98STR _T("Windows 98")
|
||||
#define W98SP1STR _T("Windows 98 SP1")
|
||||
#define W98SESTR _T("Windows 98 SE")
|
||||
#define WMESTR _T("Windows ME")
|
||||
|
||||
#define WNT351STR _T("Windows NT 3.51")
|
||||
#define WNT4STR _T("Windows NT 4")
|
||||
#define W2KSTR _T("Windows 2000")
|
||||
#define WXPSTR _T("Windows XP")
|
||||
#define W2003STR _T("Windows Server 2003")
|
||||
@ -61,9 +51,8 @@ static LONG GetNextNameValue(HKEY key, LPCTSTR subkey, LPTSTR szName, LPTSTR szD
|
||||
#define W2008STR _T("Windows Server 2008")
|
||||
#define W2008R2STR _T("Windows Server 2008 R2")
|
||||
#define W7STR _T("Windows 7")
|
||||
|
||||
#define WCESTR _T("Windows CE")
|
||||
|
||||
#define W2012STR _T("Windows Server 2012")
|
||||
#define W8STR _T("Windows 8")
|
||||
|
||||
#define WUNKNOWN 0
|
||||
|
||||
@ -87,6 +76,8 @@ static LONG GetNextNameValue(HKEY key, LPCTSTR subkey, LPTSTR szName, LPTSTR szD
|
||||
#define W2008 107
|
||||
#define W2008R2 108
|
||||
#define W7 109
|
||||
#define W2012 110
|
||||
#define W8 111
|
||||
#define WNTLAST 199
|
||||
|
||||
#define WCEFIRST 201
|
||||
@ -616,59 +607,9 @@ bool GetWinVer(LPTSTR lpszVersion, int nVersionSize, int *pnVersion)
|
||||
DWORD dwBuildNumber = osinfo.dwBuildNumber & 0xFFFF; // Win 95 needs this
|
||||
TRACE(_T("%d: %d.%d.%d\n"), dwPlatformId, dwMajorVersion, dwMinorVersion, dwBuildNumber);
|
||||
|
||||
if ((dwPlatformId == VER_PLATFORM_WIN32_WINDOWS) && (dwMajorVersion == 4))
|
||||
if (dwPlatformId == VER_PLATFORM_WIN32_NT)
|
||||
{
|
||||
if ((dwMinorVersion < 10) && (dwBuildNumber == 950))
|
||||
{
|
||||
cp = W95STR;
|
||||
nVersion = W95;
|
||||
}
|
||||
else if ((dwMinorVersion < 10) &&
|
||||
((dwBuildNumber > 950) && (dwBuildNumber <= 1080)))
|
||||
{
|
||||
cp = W95SP1STR;
|
||||
nVersion = W95SP1;
|
||||
}
|
||||
else if ((dwMinorVersion < 10) && (dwBuildNumber > 1080))
|
||||
{
|
||||
cp = W95OSR2STR;
|
||||
nVersion = W95OSR2;
|
||||
}
|
||||
else if ((dwMinorVersion == 10) && (dwBuildNumber == 1998))
|
||||
{
|
||||
cp = W98STR;
|
||||
nVersion = W98;
|
||||
}
|
||||
else if ((dwMinorVersion == 10) &&
|
||||
((dwBuildNumber > 1998) && (dwBuildNumber < 2183)))
|
||||
{
|
||||
cp = W98SP1STR;
|
||||
nVersion = W98SP1;
|
||||
}
|
||||
else if ((dwMinorVersion == 10) && (dwBuildNumber >= 2183))
|
||||
{
|
||||
cp = W98SESTR;
|
||||
nVersion = W98SE;
|
||||
}
|
||||
else if (dwMinorVersion == 90)
|
||||
{
|
||||
cp = WMESTR;
|
||||
nVersion = WME;
|
||||
}
|
||||
}
|
||||
else if (dwPlatformId == VER_PLATFORM_WIN32_NT)
|
||||
{
|
||||
if (dwMajorVersion == 3)
|
||||
{
|
||||
cp = WNT351STR;
|
||||
nVersion = WNT351;
|
||||
}
|
||||
else if (dwMajorVersion == 4)
|
||||
{
|
||||
cp = WNT4STR;
|
||||
nVersion = WNT4;
|
||||
}
|
||||
else if (dwMajorVersion == 5)
|
||||
if (dwMajorVersion <= 5)
|
||||
{
|
||||
switch (dwMinorVersion)
|
||||
{
|
||||
@ -689,21 +630,21 @@ bool GetWinVer(LPTSTR lpszVersion, int nVersionSize, int *pnVersion)
|
||||
else
|
||||
{ cp = WVISTASTR; nVersion = WVISTA; }
|
||||
break;
|
||||
default:
|
||||
case 1:
|
||||
if (bServer)
|
||||
{ cp = W2008R2STR; nVersion = W2008R2; }
|
||||
else
|
||||
{ cp = W7STR; nVersion = W7; }
|
||||
break;
|
||||
default:
|
||||
if (bServer)
|
||||
{ cp = W2012STR; nVersion = W2012; }
|
||||
else
|
||||
{ cp = W8STR; nVersion = W8; }
|
||||
break;
|
||||
}
|
||||
// TBI: Windows 2008 Server
|
||||
}
|
||||
}
|
||||
else if (dwPlatformId == VER_PLATFORM_WIN32_CE)
|
||||
{
|
||||
cp = WCESTR;
|
||||
nVersion = WCE;
|
||||
}
|
||||
}
|
||||
|
||||
if (lpszVersion != NULL && nVersionSize > 0)
|
||||
|
@ -3666,32 +3666,25 @@ unsigned long xvt_sys_get_free_memory_kb()
|
||||
int xvt_sys_get_os_version()
|
||||
{
|
||||
int os = 0;
|
||||
#ifdef __WXMSW__
|
||||
|
||||
int nVersion = 0;
|
||||
::GetWinVer(NULL, 0, &nVersion);
|
||||
::GetWinVer(NULL, 0, &nVersion); // Implemented in XFont.cpp, not a Win32 API
|
||||
switch (nVersion)
|
||||
{
|
||||
case 1:
|
||||
case 2:
|
||||
case 3: os = XVT_WS_WIN_95; break;
|
||||
case 4:
|
||||
case 5:
|
||||
case 6: os = XVT_WS_WIN_98; break;
|
||||
case 7: os = XVT_WS_WIN_ME; break;
|
||||
case 101:
|
||||
case 102: os = XVT_WS_WIN_NT; break;
|
||||
case 103: os = XVT_WS_WIN_2000; break;
|
||||
case 104: os = XVT_WS_WIN_XP; break;
|
||||
case 105: os = XVT_WS_WIN_2003; break;
|
||||
case 106: os = XVT_WS_WIN_VISTA; break;
|
||||
case 107: os = XVT_WS_WIN_2008; break;
|
||||
case 102: os = XVT_WS_WIN_NT; break;
|
||||
case 103: os = XVT_WS_WIN_2000; break;
|
||||
case 104: os = XVT_WS_WIN_XP; break;
|
||||
case 105: os = XVT_WS_WIN_2003; break;
|
||||
case 106: os = XVT_WS_WIN_VISTA; break;
|
||||
case 107: os = XVT_WS_WIN_2008; break;
|
||||
case 108: os = XVT_WS_WIN_2008R2; break;
|
||||
case 109:
|
||||
default : os = XVT_WS_WIN_7; break;
|
||||
case 109: os = XVT_WS_WIN_7; break;
|
||||
case 110: os = XVT_WS_WIN_2012; break;
|
||||
case 111:
|
||||
default : os = XVT_WS_WIN_8; break;
|
||||
}
|
||||
#else
|
||||
os = XVT_WS_LINUX;
|
||||
#endif
|
||||
|
||||
return os;
|
||||
}
|
||||
|
||||
@ -3713,12 +3706,10 @@ int xvt_sys_get_version(char* os_version, char* ptk_version, int maxsize)
|
||||
const int version = xvt_sys_get_os_version();
|
||||
if (os_version && maxsize >= 8)
|
||||
{
|
||||
#ifdef __WXMSW__
|
||||
if (version >= XVT_WS_WIN_VISTA) // wxWidgets non sa descrivere i moderni sistemi Microsoft
|
||||
::GetWinVer(os_version, maxsize, NULL);
|
||||
else
|
||||
#endif
|
||||
wxStrncpy(os_version, wxGetOsDescription(), maxsize);
|
||||
wxStrncpy(os_version, wxGetOsDescription(), maxsize);
|
||||
}
|
||||
if (ptk_version && maxsize >= 8)
|
||||
wxStrncpy(ptk_version, wxVERSION_STRING, maxsize);
|
||||
|
@ -21,6 +21,8 @@
|
||||
#define XVT_WS_WIN_2008 309
|
||||
#define XVT_WS_WIN_2008R2 310
|
||||
#define XVT_WS_WIN_7 311
|
||||
#define XVT_WS_WIN_2012 312
|
||||
#define XVT_WS_WIN_8 313
|
||||
|
||||
#define XVT_WS_UNKNOWN 0
|
||||
#define MACWS 100 /* Apple Macintosh */
|
||||
|
Loading…
x
Reference in New Issue
Block a user