如何准确获取windows系统版本。

wo22ni 2010-08-16 07:08:21
要像和点我的电脑右键属性里显示的一样准确呀。。谢谢。
...全文
179 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
嗷嗷叫的老马 2010-08-20
  • 打赏
  • 举报
回复
object类型.

后期绑定吧.
wo22ni 2010-08-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 yangke1994 的回复:]
VB code
Set oWMINameSpace = GetObject("winmgmts:")
Set SystemSet = oWMINameSpace.InstancesOf("Win32_OperatingSystem")
For Each System In SystemSet
A = A & "操作系统: ……
[/Quote]

oWMINameSpace要定义成什么类型呀。。
yangke1994 2010-08-18
  • 打赏
  • 举报
回复
    Set oWMINameSpace = GetObject("winmgmts:")
Set SystemSet = oWMINameSpace.InstancesOf("Win32_OperatingSystem")
For Each System In SystemSet
A = A & "操作系统: " & System.Caption & "Service Pack " & System.ServicePackMajorVersion & "." & System.ServicePackMinorVersion
Next
wo22ni 2010-08-17
  • 打赏
  • 举报
回复
没列出win7,vista,还有怎么分别是专业版,还是家庭版呀。。谢谢。。。
bcrun 2010-08-16
  • 打赏
  • 举报
回复
楼上的够详细的
xuggzu 2010-08-16
  • 打赏
  • 举报
回复
另,可直接使用api获取:

Option Explicit

Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Long

Private Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128 ' Maintenance string for PSS usage
osName As String ' 我自己加的, 操作系统的名称
End Type

' 获得 Windows 操作系统的版本
' OSVERSIONINFO 结构中的 osName 返回操作系统的名称
Private Function GetWindowsVersion() As OSVERSIONINFO
Dim ver As OSVERSIONINFO
ver.dwOSVersionInfoSize = 148
GetVersionEx ver
With ver
Select Case .dwPlatformId
Case 1
Select Case .dwMinorVersion
Case 0
.osName = "Windows 95"
Case 10
.osName = "Windows 98"
Case 90
.osName = "Windows Mellinnium"
End Select
Case 2
Select Case .dwMajorVersion
Case 3
.osName = "Windows NT 3.51"
Case 4
.osName = "Windows NT 4.0"
Case 5
Select Case .dwMinorVersion
Case 0
.osName = "Windows 2000"
Case 1
.osName = "Windows XP"
Case 2
.osName = "Windows Server 2003"
End Select
End Select
Case Else
.osName = "Failed"
End Select
End With
GetWindowsVersion = ver
End Function

Private Sub Command1_Click()
Dim ver As OSVERSIONINFO
ver = GetWindowsVersion()
With ver
Debug.Print .osName, .dwMajorVersion, .dwMinorVersion, .dwBuildNumber, .dwPlatformId, .szCSDVersion
End With
End Sub

cnuser1 2010-08-16
  • 打赏
  • 举报
回复
VB6请参考系统自带的FrmAbout窗体,若是VB.Net,请参考My。

1,486

社区成员

发帖
与我相关
我的任务
社区描述
VB API
社区管理员
  • API
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧