1,502
社区成员
发帖
与我相关
我的任务
分享
Private Sub Form_Load()
Dim objWMIService, colItems, objItem, strOSversion As String
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_OperatingSystem")
For Each objItem In colItems
strOSversion = objItem.Version
Next
Select Case Left(strOSversion, 3)
Case "5.2": strOSversion = "Windows Server 2003"
Case "5.0": strOSversion = "Windows 2000"
Case "5.1": strOSversion = "Windows XP"
Case "6.0": strOSversion = "windows vista"
Case "6.1": strOSversion = "Win7"
Case "6.2": strOSversion = "Win8"
Case "6.3": strOSversion = "Win8.1"
Case "10.": strOSversion = "Win10"
Case Else: strOSversion = "i don't know"
End Select
MsgBox "你的操作系统是:" & strOSversion
End Sub
要更精确的话自己搜集信息。
4.00.950 Windows 95
4.00.1111 Windows 95 OSR 2
4.00.1381 Windows NT 4.0
4.10.1998 Windows 98
4.10.2222 Windows 98SE
4.90.3000 Windows Me
5.00.2195 Windows 2000
5.10.2600 Windows XP
5.20.3790 Windows XP x64 & Windows Server 2003
6.00.6000 Windows Vista
6.00.6001 Windows Vista SP1 & Windows Server 2008 SP1
6.00.6002 Windows Vista SP2 & Windows Server 2008 SP2
6.10.7600 Windows 7 & Windows Server 2008 R2
6.10.7601 Windows 7 SP1 & Windows Server 2008 R2 SP1
6.20.9200 Windows 8 & Windows Server 2012
6.30.9600 Windows 8.1 & Windows Server 2012 R2
10.0.10586 Windows 10
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONONFO) As Long
Private Type OSVERSIONONFO
dwOSVersioninfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformld As Long
dwCSDVersion As String * 128
End Type
Public Function SystemVer() As Variant
Dim Osinfor As OSVERSIONONFO, StrOsName As String
Osinfor.dwOSVersioninfoSize = Len(Osinfor)
GetVersionEx Osinfor
Select Case Osinfor.dwPlatformld
Case 0
StrOsName = "Windows 32s"
Case 1
Select Case Osinfor.dwMinorVersion
Case 0
StrOsName = "Windows 95"
Case 10
StrOsName = "Windows 98"
Case 90
StrOsName = "Windows Mellinnium"
End Select
Case 2
Select Case Osinfor.dwMajorVersion
Case 3
StrOsName = "WindowsNT 3.51"
Case 4
StrOsName = "WindowsNT 4.0"
Case 5
Select Case Osinfor.dwMinorVersion
Case 0
StrOsName = "Windows 2000"
Case 1
StrOsName = "Windows XP"
Case 2
StrOsName = "Windows 2003"
End Select
Case 6
Select Case Osinfor.dwMinorVersion
Case 0
StrOsName = "Windows Vista"
Case 1
StrOsName = "Windows 7"
End Select
End Select
Case Else
StrOsName = "未知系统版本"
End Select
SystemVer = StrOsName
End Function
Private Sub Command1_Click()
MsgBox SystemVer
End Sub