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

📄 frmmain.frm

📁 自己写的多种加密算法 供有心人学习、解密
💻 FRM
📖 第 1 页 / 共 2 页
字号:
VERSION 5.00
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form frmMain 
   BorderStyle     =   3  'Fixed Dialog
   Caption         =   "超级加密王"
   ClientHeight    =   3030
   ClientLeft      =   45
   ClientTop       =   735
   ClientWidth     =   5025
   LinkTopic       =   "Form1"
   MaxButton       =   0   'False
   MinButton       =   0   'False
   ScaleHeight     =   202
   ScaleMode       =   3  'Pixel
   ScaleWidth      =   335
   StartUpPosition =   2  '屏幕中心
   Begin VB.Frame frameDe 
      Caption         =   "文件解密"
      Height          =   1215
      Left            =   120
      TabIndex        =   7
      Top             =   1440
      Width           =   4815
      Begin VB.TextBox txtSrcD 
         Height          =   300
         Left            =   1560
         TabIndex        =   4
         Top             =   240
         Width           =   3135
      End
      Begin VB.CommandButton cmdDestD 
         Caption         =   "解密并保存为"
         Height          =   375
         Left            =   120
         TabIndex        =   5
         Top             =   720
         Width           =   1335
      End
      Begin VB.CommandButton cmdSrcD 
         Caption         =   "指定加密文件"
         Height          =   375
         Left            =   120
         TabIndex        =   3
         Top             =   240
         Width           =   1335
      End
   End
   Begin VB.Frame frameEn 
      Caption         =   "文件加密"
      Height          =   1215
      Left            =   120
      TabIndex        =   6
      Top             =   120
      Width           =   4815
      Begin VB.ComboBox cmbE 
         Height          =   300
         ItemData        =   "frmMain.frx":0000
         Left            =   1560
         List            =   "frmMain.frx":000A
         Style           =   2  'Dropdown List
         TabIndex        =   8
         Top             =   720
         Width           =   3135
      End
      Begin VB.TextBox txtSrcE 
         Height          =   300
         Left            =   1560
         TabIndex        =   1
         Top             =   240
         Width           =   3135
      End
      Begin VB.CommandButton cmdSrcE 
         Caption         =   "指定源文件"
         Height          =   375
         Left            =   120
         TabIndex        =   0
         Top             =   240
         Width           =   1335
      End
      Begin VB.CommandButton cmdDestE 
         Caption         =   "加密并保存为"
         Height          =   375
         Left            =   120
         TabIndex        =   2
         Top             =   720
         Width           =   1335
      End
   End
   Begin MSComDlg.CommonDialog DLG 
      Left            =   2280
      Top             =   1200
      _ExtentX        =   847
      _ExtentY        =   847
      _Version        =   393216
   End
   Begin VB.Label lblPro 
      AutoSize        =   -1  'True
      Caption         =   "100%"
      Height          =   180
      Left            =   2160
      TabIndex        =   11
      Top             =   2760
      Width           =   360
   End
   Begin VB.Label lblState 
      AutoSize        =   -1  'True
      Caption         =   "无"
      Height          =   180
      Left            =   1200
      TabIndex        =   10
      Top             =   2760
      Width           =   180
   End
   Begin VB.Label lblIntr 
      AutoSize        =   -1  'True
      Caption         =   "工作状态"
      Height          =   180
      Left            =   240
      TabIndex        =   9
      Top             =   2760
      Width           =   720
   End
   Begin VB.Menu MenuEnc 
      Caption         =   "加密(&E)"
      Begin VB.Menu MenuSrcE 
         Caption         =   "指定源文件(&O)..."
      End
      Begin VB.Menu MenuDestE 
         Caption         =   "加密并保存为(&S)..."
      End
   End
   Begin VB.Menu MenuDec 
      Caption         =   "解密(&D)"
      Begin VB.Menu MenuSrcD 
         Caption         =   "指定加密文件(&O)..."
      End
      Begin VB.Menu MenuDestD 
         Caption         =   "解密并保存为(&S)..."
      End
   End
   Begin VB.Menu MenuHelp 
      Caption         =   "帮助(&H)"
      Begin VB.Menu MenuIntr 
         Caption         =   "功能简介(&H)..."
      End
      Begin VB.Menu MenuAbout 
         Caption         =   "关于超级加密解密器(&A)..."
      End
   End
End
Attribute VB_Name = "frmMain"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
'超级加密文件格式解析:
'1.随机数加密文件
'    首字节存放加密方式(0)
'    第2到5四个字节存放源文件的大小
'    第6到9四个字节存放随机数个数
'    接下去的RndNum*4个字节存放放随机数
'    接下去与源文件等大的部分存放源数据Xor随机数的结果(RndNum个随机数循环着使用)
'    文件末尾存放源文件的文件名
'2.密码自解密文件(可执行文件)
'    首先是程序内容
'    再是修改使用次数的程序的内容
'    从非程序内容开始记:
'    首字节存放加密方式(1)
'    第2到5四个字节存放源文件的大小
'    接下去与源文件等大的部分存放源数据Xor(密码中一个字符AscII编码^2)的结果(Len(PW)个字符循环着使用:先顺着轮流,再倒着轮流,再顺着...)
'    文件末尾存放源文件的文件名
'    后面四个字节存放自解密源文件的大小
'    后面四个字节存放修改使用次数的程序的大小
'    若后面还有四个字节,且值为非正数,则:
'       0.表示开启防破解功能且文件第一次被使用
'       -1.文件第二次被使用
'       -2.文件第三次被使用
'       -3.文件已被使用过三次,已禁用,然后文件自杀
'       -4.正在运行的是自解密源文件,给予提示
Dim Run As Boolean

'得到根目录路径
Private Function GetAppPath() As String
    If Right(App.Path, 1) = "\" Then
        GetAppPath = App.Path
    Else
        GetAppPath = App.Path & "\"
    End If
End Function

Private Sub Form_Load()
    cmbE.ListIndex = 0
    lblPro.Caption = ""
End Sub
Private Sub Form_Unload(Cancel As Integer)
    If Run Then
        Dim MsgDlg As String
        MsgDlg = "超级加密王正在工作..." & vbCrLf & "现在退出会使加密文件" _
        & "不完整且无法解密!" & vbCrLf & "确实要退出吗?"
        If MsgBox(MsgDlg, vbYesNo) = vbYes Then
            End
        Else
            Cancel = 1
        End If
    End If
End Sub

'指定要加密的源文件
Private Sub cmdSrcE_Click()
    DLG.Filter = "所有文件(*.*)|*.*"
    DLG.ShowOpen
    txtSrcE.Text = DLG.FileName
End Sub
'进行加密
Private Sub cmdDestE_Click()
    Select Case cmbE.ListIndex
    Case 0 '随机数加密
        Call RndEncrypt
    Case 1 '密码加密
        Call PasswordEncrypt
    End Select
End Sub
'指定要解密的加密文件
Private Sub cmdSrcD_Click()
    DLG.Filter = "所有超级加密文件(*.ser)|*.ser"
    DLG.ShowOpen
    txtSrcD.Text = DLG.FileName
End Sub
'进行解密
Private Sub cmdDestD_Click()
    Dim EnMode As Byte
    Open txtSrcD For Binary As #1
        Get 1, , EnMode
    Close 1
    Select Case EnMode
    Case 0 '随机数加密
        Call RndDecrypt
    End Select
End Sub

⌨️ 快捷键说明

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