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