?? frmabout.frm
字號:
VERSION 5.00
Begin VB.Form frmAbout
Appearance = 0 'Flat
AutoRedraw = -1 'True
BackColor = &H80000005&
BorderStyle = 0 'None
Caption = "關于軟件"
ClientHeight = 3900
ClientLeft = 3480
ClientTop = 3450
ClientWidth = 7965
ClipControls = 0 'False
LinkTopic = "Form2"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 260
ScaleMode = 3 'Pixel
ScaleWidth = 531
ShowInTaskbar = 0 'False
Begin Project1.xp_canvas xp_canvas1
Height = 3855
Left = 0
TabIndex = 0
Top = 0
Width = 7935
_ExtentX = 13996
_ExtentY = 6800
Caption = "關于軟件"
Icon = "frmAbout.frx":0000
Begin Project1.xpcmdbutton cmdSysInfo
Height = 495
Left = 1800
TabIndex = 9
Top = 2880
Width = 1455
_ExtentX = 2566
_ExtentY = 873
Caption = "系統信息(&S)..."
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋體"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin Project1.xpcmdbutton cmdOK
Height = 495
Left = 360
TabIndex = 8
Top = 2880
Width = 1335
_ExtentX = 2355
_ExtentY = 873
Caption = "確定"
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋體"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin VB.Frame Frame2
Height = 1575
Left = 240
TabIndex = 6
Top = 1200
Width = 3375
Begin VB.Label lblDisclaimer
Caption = "警告: 本計算機程序受版權法和國際條約的保護,未經許可,不得擅自復制或傳播(或其中任何部分),違者必究!"
BeginProperty Font
Name = "新宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 1455
Left = 120
TabIndex = 7
Top = 0
Width = 3135
End
End
Begin VB.Frame Frame1
Height = 3135
Left = 3720
TabIndex = 2
Top = 480
Width = 3975
Begin VB.Label lblDescription
Caption = $"frmAbout.frx":57F2
BeginProperty Font
Name = "新宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 1335
Left = 120
TabIndex = 5
Top = 1680
Width = 3735
End
Begin VB.Label lblVersion
Caption = "版 本"
BeginProperty Font
Name = "新宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 615
Left = 120
TabIndex = 4
Top = 960
Width = 3615
End
Begin VB.Label lblTitle
Caption = "應用程序標題"
BeginProperty Font
Name = "新宋體"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 495
Left = 120
TabIndex = 3
Top = 240
Width = 3615
End
End
Begin VB.PictureBox Picture1
Height = 615
Left = 240
Picture = "frmAbout.frx":5890
ScaleHeight = 555
ScaleWidth = 3315
TabIndex = 1
Top = 480
Width = 3375
End
Begin Project1.xptopbuttons xptopbuttons1
Height = 315
Left = 7560
Top = 0
Width = 315
_ExtentX = 556
_ExtentY = 556
End
End
End
Attribute VB_Name = "frmAbout"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
' 注冊表關鍵字安全選項...
Const READ_CONTROL = &H20000
Const KEY_QUERY_VALUE = &H1
Const KEY_SET_VALUE = &H2
Const KEY_CREATE_SUB_KEY = &H4
Const KEY_ENUMERATE_SUB_KEYS = &H8
Const KEY_NOTIFY = &H10
Const KEY_CREATE_LINK = &H20
Const KEY_ALL_ACCESS = KEY_QUERY_VALUE + KEY_SET_VALUE + _
KEY_CREATE_SUB_KEY + KEY_ENUMERATE_SUB_KEYS + _
KEY_NOTIFY + KEY_CREATE_LINK + READ_CONTROL
' 注冊表關鍵字 ROOT 類型...
Const HKEY_LOCAL_MACHINE = &H80000002
Const ERROR_SUCCESS = 0
Const REG_SZ = 1 ' 獨立的空的終結字符串
Const REG_DWORD = 4 ' 32位數字
Const gREGKEYSYSINFOLOC = "SOFTWARE\Microsoft\Shared Tools Location"
Const gREGVALSYSINFOLOC = "MSINFO"
Const gREGKEYSYSINFO = "SOFTWARE\Microsoft\Shared Tools\MSINFO"
Const gREGVALSYSINFO = "PATH"
Private Declare Function RegOpenKeyEx Lib "advapi32" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, ByRef phkResult As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, ByRef lpType As Long, ByVal lpData As String, ByRef lpcbData As Long) As Long
Private Declare Function RegCloseKey Lib "advapi32" (ByVal hKey As Long) As Long
Private Sub cmdSysInfo_Click()
Call StartSysInfo
End Sub
Private Sub cmdOK_Click()
Unload Me
End Sub
Private Sub Form_Load()
Me.Caption = "關于 " & App.Title
lblVersion.Caption = "版本 " & App.Major & "." & App.Minor & "." & App.Revision
lblTitle.Caption = App.Title
End Sub
Public Sub StartSysInfo()
On Error GoTo SysInfoErr
Dim rc As Long
Dim SysInfoPath As String
' 試圖從注冊表中獲得系統信息程序的路徑及名稱...
If GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFO, gREGVALSYSINFO, SysInfoPath) Then
' 試圖僅從注冊表中獲得系統信息程序的路徑...
ElseIf GetKeyValue(HKEY_LOCAL_MACHINE, gREGKEYSYSINFOLOC, gREGVALSYSINFOLOC, SysInfoPath) Then
' 已知32位文件版本的有效位置
If (Dir(SysInfoPath & "\MSINFO32.EXE") <> "") Then
SysInfoPath = SysInfoPath & "\MSINFO32.EXE"
' 錯誤 - 文件不能被找到...
Else
GoTo SysInfoErr
End If
' 錯誤 - 注冊表相應條目不能被找到...
Else
GoTo SysInfoErr
End If
Call Shell(SysInfoPath, vbNormalFocus)
Exit Sub
SysInfoErr:
Msgbox "此時系統信息不可用", vbOKOnly
End Sub
Public Function GetKeyValue(KeyRoot As Long, KeyName As String, SubKeyRef As String, ByRef KeyVal As String) As Boolean
Dim i As Long ' 循環計數器
Dim rc As Long ' 返回代碼
Dim hKey As Long ' 打開的注冊表關鍵字句柄
Dim hDepth As Long '
Dim KeyValType As Long ' 注冊表關鍵字數據類型
Dim tmpVal As String ' 注冊表關鍵字值的臨時存儲器
Dim KeyValSize As Long ' 注冊表關鍵自變量的尺寸
'------------------------------------------------------------
' 打開 {HKEY_LOCAL_MACHINE...} 下的 RegKey
'------------------------------------------------------------
rc = RegOpenKeyEx(KeyRoot, KeyName, 0, KEY_ALL_ACCESS, hKey) ' 打開注冊表關鍵字
If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError ' 處理錯誤...
tmpVal = String$(1024, 0) ' 分配變量空間
KeyValSize = 1024 ' 標記變量尺寸
'------------------------------------------------------------
' 檢索注冊表關鍵字的值...
'------------------------------------------------------------
rc = RegQueryValueEx(hKey, SubKeyRef, 0, _
KeyValType, tmpVal, KeyValSize) ' 獲得/創建關鍵字值
If (rc <> ERROR_SUCCESS) Then GoTo GetKeyError ' 處理錯誤
If (Asc(Mid(tmpVal, KeyValSize, 1)) = 0) Then ' Win95 外接程序空終結字符串...
tmpVal = Left(tmpVal, KeyValSize - 1) ' Null 被找到,從字符串中分離出來
Else ' WinNT 沒有空終結字符串...
tmpVal = Left(tmpVal, KeyValSize) ' Null 沒有被找到, 分離字符串
End If
'------------------------------------------------------------
' 決定轉換的關鍵字的值類型...
'------------------------------------------------------------
Select Case KeyValType ' 搜索數據類型...
Case REG_SZ ' 字符串注冊關鍵字數據類型
KeyVal = tmpVal ' 復制字符串的值
Case REG_DWORD ' 四字節的注冊表關鍵字數據類型
For i = Len(tmpVal) To 1 Step -1 ' 將每位進行轉換
KeyVal = KeyVal + Hex(Asc(Mid(tmpVal, i, 1))) ' 生成值字符。 By Char。
Next
KeyVal = Format$("&h" + KeyVal) ' 轉換四字節的字符為字符串
End Select
GetKeyValue = True ' 返回成功
rc = RegCloseKey(hKey) ' 關閉注冊表關鍵字
Exit Function ' 退出
GetKeyError: ' 錯誤發生后將其清除...
KeyVal = "" ' 設置返回值到空字符串
GetKeyValue = False ' 返回失敗
rc = RegCloseKey(hKey) ' 關閉注冊表關鍵字
End Function
Private Sub Label1_Click()
End Sub
Private Sub xptopbuttons1_Click()
Unload Me
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -