Advertisement
3DotDev

Détecter la version de Windows (XP, Vista, 7, 8, 8.1, 10)

Sep 21st, 2013
565
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 6.87 KB | None | 0 0
  1. '########################################################
  2. ' Credits 3DotDev from http://3dotdevcoder.blogspot.fr/
  3. '########################################################
  4.     Public Class OS
  5.  
  6.         ''' <summary>
  7.         ''' Renvoie la version du système d'exploitation (Windows Vista, Windows 7, Windows 8, Windows 8.1, 10
  8.         ''' </summary>
  9.         ''' <returns>Valeur de type String</returns>
  10.         Public Shared Function GetVersion() As String
  11.             Dim oSVersion As OperatingSystem = Environment.OSVersion
  12.             Select Case oSVersion.Platform.ToString
  13.                 Case "Win32Windows"
  14.                     Select Case oSVersion.Version.Minor
  15.                         Case 0
  16.                             Return "Windows 95"
  17.                         Case 10
  18.                             If (oSVersion.Version.Revision.ToString = "2222A") Then
  19.                                 Return "Windows 98 Second Edition"
  20.                             End If
  21.                             Return "Windows 98"
  22.                         Case 90
  23.                             Return "Windows Me"
  24.                     End Select
  25.                     Exit Select
  26.                 Case "Win32NT"
  27.                     Select Case oSVersion.Version.Major
  28.                         Case 3
  29.                             Return "Windows NT 3.51"
  30.                         Case 4
  31.                             Return "Windows NT 4.0"
  32.                         Case 5
  33.                             Select Case oSVersion.Version.Minor
  34.                                 Case 0
  35.                                     Return "Windows 2000"
  36.                                 Case 1
  37.                                     Return "Windows XP"
  38.                                 Case 2
  39.                                     If My.Computer.Info.OSFullName.Contains("R2") Then
  40.                                         Return "Windows Server 2003 R2"
  41.                                     Else
  42.                                         Return "Windows Server 2003"
  43.                                     End If
  44.                             End Select
  45.                             Exit Select
  46.                         Case 6
  47.                             Select Case oSVersion.Version.Minor
  48.                                 Case 0
  49.                                     If My.Computer.Info.OSFullName.Contains("Serv") Then
  50.                                         Return "Windows Server 2008"
  51.                                     ElseIf My.Computer.Info.OSFullName.Contains("Vista") Then
  52.                                         Return "Windows Vista"
  53.                                     ElseIf My.Computer.Info.OSFullName.Contains("Embedded") Then
  54.                                         Return "Windows Embedded"
  55.                                     End If
  56.                                 Case 1
  57.                                     If My.Computer.Info.OSFullName.Contains("R2") Then
  58.                                         Return "Windows Server 2008 R2"
  59.                                     ElseIf My.Computer.Info.OSFullName.Contains("7") Then
  60.                                         Return "Windows 7"
  61.                                     ElseIf My.Computer.Info.OSFullName.Contains("Embedded") Then
  62.                                         Return "Windows Embedded"
  63.                                     End If
  64.                                 Case 2
  65.                                     If My.Computer.Info.OSFullName.Contains("Serv") Then
  66.                                         Return "Windows Server 2012"
  67.                                     ElseIf My.Computer.Info.OSFullName.Contains("8") Then
  68.                                         Return "Windows 8"
  69.                                     ElseIf My.Computer.Info.OSFullName.Contains("Embedded") Then
  70.                                         Return "Windows Embedded"
  71.                                     ElseIf My.Computer.Info.OSFullName.Contains("10") Then
  72.                                         Return "Windows 10"
  73.                                     End If
  74.                                 Case 3
  75.                                     If My.Computer.Info.OSFullName.Contains("Serv") Then
  76.                                         Return "Windows Server 2012 R2"
  77.                                     ElseIf My.Computer.Info.OSFullName.Contains("8.1") Then
  78.                                         Return "Windows 8.1"
  79.                                     ElseIf My.Computer.Info.OSFullName.Contains("Embedded") Then
  80.                                         Return "Windows Embedded"
  81.                                     ElseIf My.Computer.Info.OSFullName.Contains("10") Then
  82.                                         Return "Windows 10"
  83.                                     End If
  84.                                 Case 4
  85.                                     If My.Computer.Info.OSFullName.Contains("10") Then
  86.                                         Return "Windows 10"
  87.                                     ElseIf My.Computer.Info.OSFullName.Contains("Embedded") Then
  88.                                         Return "Windows Embedded"
  89.                                     End If
  90.                             End Select
  91.                         Case 10
  92.                             If My.Computer.Info.OSFullName.Contains("10") Then
  93.                                 Return "Windows 10"
  94.                             ElseIf My.Computer.Info.OSFullName.Contains("Embedded") Then
  95.                                 Return "Windows Embedded"
  96.                             End If
  97.                             Exit Select
  98.                     End Select
  99.                     Exit Select
  100.             End Select
  101.             Return "Système d'exploitation inconnu !"
  102.         End Function
  103.  
  104.         Public Shared Function GetServicePack() As String
  105.             Dim OSservicePack As String = Environment.OSVersion.ServicePack
  106.             If OSservicePack.Contains("Service Pack ") Then
  107.                 Return OSservicePack.Replace("Service Pack ", "SP")
  108.             End If
  109.             Return "SP0"
  110.         End Function
  111.  
  112.         Public Shared Function OSIs64bit() As Boolean
  113.             Try
  114.                 If (Environment.GetEnvironmentVariable("ProgramFiles(x86)") <> "") Then
  115.                     Return True
  116.                 End If
  117.             Catch ex As Exception
  118.             End Try
  119.             Return False
  120.         End Function
  121.  
  122.         Public Shared Function GetOSArch() As String
  123.             If OSIs64bit() Then
  124.                 Return "x64 Bits"
  125.             End If
  126.             Return "x32 Bits"
  127.         End Function
  128.  
  129.     End Class
  130.  
  131. '############################# Comment l'utiliser ##############################
  132.  
  133. Dim OS As String = OS.GetVersion
  134. If OS = "Windows 8.1" Then
  135.     MsgBox(Os & " ne prends pas en charge cette application ! Compatible Windows 8 uniquement.")
  136. End If
  137.  
  138. '##############################################################################
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement