📄 getversionex.bas
字号:
Attribute VB_Name = "GetVersionExModule"
Option Explicit
Public Const VER_PLATFORM_WIN32s = 0
Public Const VER_PLATFORM_WIN32_WINDOWS = 1
Public Const VER_PLATFORM_WIN32_NT = 2
Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As OSVERSIONINFO) As Boolean
Sub GetVersionEx_test()
Dim Ver As OSVERSIONINFO, S As String
Ver.dwOSVersionInfoSize = Len(Ver)
GetVersionEx Ver
S = "版本:" & PlatformName(Ver) & vbCrLf & vbCrLf
S = S & "编号:" & Ver.dwMajorVersion & "." & Ver.dwMinorVersion
S = S & "." & Ver.dwBuildNumber Mod 65536 ' Low Word is Build No.
MsgBox S, , "版本及编号"
End Sub
Function PlatformName(Ver As OSVERSIONINFO)
Select Case Ver.dwPlatformId
Case VER_PLATFORM_WIN32_WINDOWS
If Ver.dwMajorVersion = 4 And Ver.dwMinorVersion = 10 Then
PlatformName = "Windows 98"
Else
PlatformName = "Windows 95"
End If
Case VER_PLATFORM_WIN32_NT
PlatformName = "Windows NT"
Case Else
PlatformName = "Win32s"
End Select
End Function
Sub Main()
GetVersionEx_test
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -