⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 密码操作.frm

📁 Windows API函数,希望大伙有用哦
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =   1440
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   4680
   LinkTopic       =   "Form1"
   ScaleHeight     =   1440
   ScaleWidth      =   4680
   StartUpPosition =   3  '窗口缺省
   Begin VB.TextBox Text1 
      Alignment       =   1  'Right Justify
      Height          =   315
      Left            =   1920
      TabIndex        =   0
      Top             =   480
      Width           =   2025
   End
   Begin VB.Label Label1 
      AutoSize        =   -1  'True
      Caption         =   "请输入密码:"
      Height          =   180
      Left            =   510
      TabIndex        =   1
      Top             =   540
      Width           =   1080
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
'  API函数声明
Private Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As Long
Private Declare Function RegCreateKey Lib "advapi32.dll" Alias "RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, phkResult As Long) As Long
Private Declare Function RegSetValue Lib "advapi32.dll" Alias "RegSetValueA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As Long
Private Declare Function RegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
' 字符常数说明
Const REG_SZ = 1
Const HKEY_CURRENT_USER = &H80000001
Dim Total As Integer, M As String
Dim hKey
Private Sub Form_Load()
Dim lValueType As Long, strBuf As String, lDataBufSize As Long
Dim strString As String
On Error GoTo A1
' 读取密码
'  打开子键
    RegOpenKey HKEY_CURRENT_USER, "RegData\AA", hKey
'  读入保存在注册表中的数据
    RegQueryValueEx hKey, "", 0, lValueType, ByVal 0, lDataBufSize
    strBuf = String(lDataBufSize, Chr$(0))
    RegQueryValueEx hKey, "", 0, 0, ByVal strBuf, lDataBufSize
    M = Left$(strBuf, InStr(1, strBuf, Chr$(0)) - 1)
    
' 关闭注册表
    RegCloseKey hKey
  Exit Sub
A1:
    M = " "
' 创建子键
    RegCreateKey HKEY_CURRENT_USER, "RegData\AA", hKey
' 写入数据
    RegSetValue hKey, "", REG_SZ, M, Len(M)
' 关闭注册表
    RegCloseKey hKey
End Sub
' 密码正确性判断
Private Sub Text1_KeyPress(KeyAscii As Integer)
  If KeyAscii = 13 Then
    If Text1 <> M Then
     Total = Total + 1
       If Total > 2 Then
          MsgBox "对不起,您无权使用本系统 !        ", vbExclamation, "提示信息"
     ' 关闭注册表
          RegCloseKey hKey
          Unload Me
          End
       End If
        MsgBox "您的密码不正确,请重新输入密码 !", vbExclamation, "提示信息"
        Text1 = ""
          Else
        MsgBox "密码正确 !", vbExclamation, "提示信息"
    End If
  End If
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -