'Nécessite d'activer la référence Microsoft Shell Controls and Automation
Private Sub CommandButton1_Click()
Dim DOCUMENT As Shell32.Folder
Set DOCUMENT = CreateObject("Shell.Application").Namespace(ThisWorkbook.Path)
For i = 0 To 34
If DOCUMENT.GetDetailsOf(DOCUMENT.Items, 10) = "Titre" Then
MsgBox "Windows XP"
Exit Sub
End If
If DOCUMENT.GetDetailsOf(DOCUMENT.Items, 21) = "Titre" Then
MsgBox "Windows 7"
Exit Sub
End If
Next i
End Sub
DOCUMENT.GetDetailsOf(DOCUMENT, 15)
DOCUMENT.GetDetailsOf(DOCUMENT, 25)
Public Function Version_Windows() As String
Dim version As String
Dim os As OSVERSIONINFO 'reçoit les informations de version
Dim retval As Variant 'valeur de retour
Dim a
Application.Volatile
os.dwOSVersionInfoSize = Len(os) 'définir la taille de la structure
retval = GetVersionEx(os) 'les informations de version de Windows en lecture
version = os.dwPlatformId & "." & os.dwMajorVersion & "." & os.dwMinorVersion
a = Array("1.4.0", "95", "1.4.10", "98", "1.4.98", "ME", "2.3.51", "NT 3", _
"2.4.0", "NT 4", "2.5.0", "2000", "2.5.1", "XP", "2.6.0", "Vista", "2.6.1", "Seven")
retval = Application.Match(version, a, 0) 'position dans le tableau
Version_Windows = "Unknown"
If IsNumeric(retval) Then Version_Windows = "Win " & a(retval)
End Function
A+Comment savoir si l'utilisateur est sous XP ou Seven et l'âge du capitaine ?