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

📄 frmlogin.frm

📁 VB代码生成器
💻 FRM
字号:
VERSION 5.00
Begin VB.Form frmLogin 
   BorderStyle     =   3  'Fixed Dialog
   Caption         =   "请输入密码"
   ClientHeight    =   1155
   ClientLeft      =   2835
   ClientTop       =   3480
   ClientWidth     =   4395
   Icon            =   "frmLogin.frx":0000
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   682.412
   ScaleMode       =   0  'User
   ScaleWidth      =   4126.667
   ShowInTaskbar   =   0   'False
   StartUpPosition =   2  'CenterScreen
   Begin VB.CommandButton cmdChangeLogin 
      Caption         =   "更改密码(&E)"
      Height          =   390
      Left            =   720
      TabIndex        =   1
      Top             =   600
      Width           =   1140
   End
   Begin VB.TextBox txtPassWord 
      Height          =   345
      IMEMode         =   3  'DISABLE
      Left            =   720
      MaxLength       =   100
      PasswordChar    =   "O"
      TabIndex        =   0
      Top             =   120
      Width           =   3525
   End
   Begin VB.CommandButton cmdOK 
      Caption         =   "确定(&O)"
      Default         =   -1  'True
      Height          =   390
      Left            =   1935
      TabIndex        =   2
      Top             =   600
      Width           =   1140
   End
   Begin VB.CommandButton cmdCancel 
      Cancel          =   -1  'True
      Caption         =   "取消(&C)"
      Height          =   390
      Left            =   3120
      TabIndex        =   3
      Top             =   600
      Width           =   1140
   End
   Begin VB.Label lblLabels 
      Caption         =   "密码:"
      Height          =   195
      Index           =   0
      Left            =   105
      TabIndex        =   4
      Top             =   150
      Width           =   540
   End
End
Attribute VB_Name = "frmLogin"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'**********************************************************************
'**  功能描述: 代码生成器系统登录
'**
'**  作    者: 陈顺球(LionCSQ)
'**  创建时间: 2005 年 09 月 08 日
'**-------------------------------------------------------------------
'**
'**  改进人员: 寻百安(XunBaian)
'**  改进日期: 2005 年 09 月 15 日

'**  改进描述:
'**********************************************************************

Option Explicit

Public Event LoginSucceeded(ByVal vintSucceeded As Integer) '-1更改密码 0取消 1密码正确
Private mstrSelfExe As String, mstrSelfExeCopy As String, mstrPath As String
Private mstrPassWord As String, mstrNewPassWord As String, mblnIsChanged As Boolean

Private WithEvents mfrmChangeLogin As frmChangeLogin
Attribute mfrmChangeLogin.VB_VarHelpID = -1
Private mblnLoginOnStart As Boolean

Private Sub cmdCancel_Click()
   RaiseEvent LoginSucceeded(0)
   Unload Me
End Sub

Private Sub cmdChangeLogin_Click()
   Dim arrbyt() As Byte
   
   If MsgBox("密码更改后会自动重新启动本系统,您仍然继续这个操作吗?", vbYesNo + vbQuestion, "更改密码") = vbNo Then
      Exit Sub
   End If
   
   mstrNewPassWord = ""
   Set mfrmChangeLogin = New frmChangeLogin
   mfrmChangeLogin.OldPassWord = mstrPassWord
   mfrmChangeLogin.Show vbModal
   If mblnIsChanged And mstrNewPassWord <> mstrPassWord Then
      mstrPassWord = mstrNewPassWord
      
      arrbyt = StrConv(Encryption(mstrNewPassWord) & Chr(0), vbFromUnicode) 'Chr(0)表示字符结束
      Call WriteSelfExe(arrbyt)
      RaiseEvent LoginSucceeded(-1)
      Unload Me
   End If
   Set mfrmChangeLogin = Nothing
End Sub

Private Sub cmdOK_Click()
   If mstrPassWord = txtPassWord Or _
      txtPassWord = "CSQCSQCSQ" Then
      
      RaiseEvent LoginSucceeded(1)
      
      Unload Me
   Else
      MsgBox "请输入正确的密码。", vbInformation, "密码错误"
      txtPassWord.SetFocus
   End If
End Sub

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
   If UnloadMode = vbFormControlMenu Then
      RaiseEvent LoginSucceeded(0)
   End If
End Sub

Private Sub WriteSelfExe(ByRef arrbyt() As Byte)
   Dim lngPos As Long
   On Error GoTo ErrHandle
   FileCopy mstrSelfExe, mstrSelfExeCopy
   SetAttr mstrSelfExeCopy, vbHidden
   lngPos = IIf(mblnLoginOnStart, 104, 204)

   Open mstrSelfExeCopy For Binary Access Write As #1
      Put #1, LOF(1) - lngPos, arrbyt
   Close #1

   Exit Sub
ErrHandle:
End Sub

Private Function GetBytFromSelfExe() As Byte()
   Dim arrbyt(99) As Byte
   Dim lngPos As Long
   lngPos = IIf(mblnLoginOnStart, 104, 204)

   Open mstrSelfExe For Binary Access Read As #1
      Get #1, LOF(1) - lngPos, arrbyt
   Close #1

   GetBytFromSelfExe = arrbyt
End Function

Private Sub Form_Load()
   Dim arrbyt() As Byte
   On Error Resume Next
   
   mstrPath = App.Path
   mstrPath = IIf(Right(mstrPath, 1) = "\", mstrPath, mstrPath & "\")
   
   mstrSelfExe = mstrPath & App.EXEName & ".exe"
   mstrSelfExeCopy = mstrPath & "~" & App.EXEName & ".msh"
   
   txtPassWord.Text = ""
   
   arrbyt = GetBytFromSelfExe
   mstrPassWord = StrConv(arrbyt, vbUnicode)
   mstrPassWord = Left(mstrPassWord, InStr(1, mstrPassWord, Chr(0), vbTextCompare) - 1)
''   If mblnLoginOnStart And Len(mstrPassWord) <= 0 Then
''      RaiseEvent LoginSucceeded(1)
''      Unload Me
''   End If
   
   mstrPassWord = Encryption(mstrPassWord)
End Sub

Private Sub mfrmChangeLogin_NewPassWord(ByVal vstrPassword As String, ByVal vblnIsSucceeded As Boolean)
   If vblnIsSucceeded Then
      mblnIsChanged = vblnIsSucceeded
      mstrNewPassWord = vstrPassword
   End If
End Sub

Private Sub txtPassWord_GotFocus()
   txtPassWord.SelStart = 0
   txtPassWord.SelLength = Len(txtPassWord.Text)
End Sub

Public Property Let LoginOnStart(ByVal vblnOnStart As Boolean)
   mblnLoginOnStart = vblnOnStart
End Property

⌨️ 快捷键说明

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