diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 2cbcd56..f4003ab 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -4,17 +4,10 @@
-
-
-
+
-
-
-
-
-
-
+
@@ -27,9 +20,8 @@
@@ -50,23 +42,10 @@
-
-
-
-
-
@@ -86,14 +65,14 @@
-
-
-
-
+
+
+
+
@@ -106,7 +85,7 @@
-
+
@@ -123,15 +102,15 @@
- {
+ "keyToString": {
+ "DefaultHtmlFileTemplate": "HTML File",
+ "RunOnceActivity.OpenProjectViewOnStart": "true",
+ "RunOnceActivity.ShowReadmeOnStart": "true",
+ "last_opened_file_path": "D:/Program Files/Python310/Scripts/pyuic5.exe",
+ "settings.editor.selected.configurable": "preferences.pluginManager"
}
-}]]>
+}
@@ -161,6 +140,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -176,7 +176,7 @@
-
+
@@ -197,7 +197,7 @@
-
+
@@ -224,7 +224,7 @@
-
+
@@ -245,34 +245,13 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
@@ -288,6 +267,48 @@
1672848140146
+
+ 1698765961025
+
+
+
+ 1698765961025
+
+
+ 1698850498765
+
+
+
+ 1698850498765
+
+
+ 1698853140384
+
+
+
+ 1698853140384
+
+
+ 1698940208580
+
+
+
+ 1698940208580
+
+
+ 1699025065814
+
+
+
+ 1699025065814
+
+
+ 1699026207401
+
+
+
+ 1699026207401
+
1699104087256
@@ -589,49 +610,7 @@
1700490633275
-
- 1700492891759
-
-
-
- 1700492891759
-
-
- 1700574536723
-
-
-
- 1700574536724
-
-
- 1700576604990
-
-
-
- 1700576604990
-
-
- 1700583772986
-
-
-
- 1700583772986
-
-
- 1700583952342
-
-
-
- 1700583952342
-
-
- 1700658736626
-
-
-
- 1700658736626
-
-
+
@@ -654,7 +633,7 @@
-
+
@@ -667,6 +646,11 @@
+
+
+
+
+
@@ -680,19 +664,14 @@
+
-
-
-
-
-
-
-
+
@@ -711,23 +690,8 @@
file://$PROJECT_DIR$/app/decrypt/decrypt.py
- 107
-
-
-
- file://$PROJECT_DIR$/app/person.py
103
-
-
-
- file://$PROJECT_DIR$/app/person.py
- 101
-
-
-
- file://$PROJECT_DIR$/app/person.py
- 102
-
+
diff --git a/app/ui_pc/tool/pc_decrypt/decryptUi.py b/app/ui_pc/tool/pc_decrypt/decryptUi.py
index 18ba2e7..5b3c130 100644
--- a/app/ui_pc/tool/pc_decrypt/decryptUi.py
+++ b/app/ui_pc/tool/pc_decrypt/decryptUi.py
@@ -1,9 +1,4 @@
# -*- coding: utf-8 -*-
-from PyQt5.QtCore import Qt, QSize, QCoreApplication, QMetaObject
-from PyQt5.QtGui import QFont
-from PyQt5.QtWidgets import QHBoxLayout, QVBoxLayout, QSpacerItem, QSizePolicy, QLabel, QGridLayout, QPushButton, \
- QCheckBox, QLineEdit, QProgressBar
-
# Form implementation generated from reading ui file 'decryptUi.ui'
#
@@ -13,46 +8,52 @@ from PyQt5.QtWidgets import QHBoxLayout, QVBoxLayout, QSpacerItem, QSizePolicy,
# run again. Do not edit this file unless you know what you are doing.
+from PyQt5 import QtCore, QtGui, QtWidgets
+
+
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName("Dialog")
Dialog.resize(611, 519)
- font = QFont()
+ font = QtGui.QFont()
font.setFamily("微软雅黑")
Dialog.setFont(font)
- Dialog.setLayoutDirection(Qt.LeftToRight)
- self.horizontalLayout_4 = QHBoxLayout(Dialog)
+ Dialog.setLayoutDirection(QtCore.Qt.LeftToRight)
+ self.horizontalLayout_4 = QtWidgets.QHBoxLayout(Dialog)
self.horizontalLayout_4.setObjectName("horizontalLayout_4")
- self.verticalLayout_2 = QVBoxLayout()
+ self.verticalLayout_2 = QtWidgets.QVBoxLayout()
self.verticalLayout_2.setObjectName("verticalLayout_2")
- spacerItem = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding)
+ self.btn_help = QtWidgets.QPushButton(Dialog)
+ self.btn_help.setObjectName("btn_help")
+ self.verticalLayout_2.addWidget(self.btn_help)
+ spacerItem = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_2.addItem(spacerItem)
- self.horizontalLayout_3 = QHBoxLayout()
+ self.horizontalLayout_3 = QtWidgets.QHBoxLayout()
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
- spacerItem1 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+ spacerItem1 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_3.addItem(spacerItem1)
- self.verticalLayout = QVBoxLayout()
+ self.verticalLayout = QtWidgets.QVBoxLayout()
self.verticalLayout.setObjectName("verticalLayout")
- self.label_3 = QLabel(Dialog)
- font = QFont()
+ self.label_3 = QtWidgets.QLabel(Dialog)
+ font = QtGui.QFont()
font.setFamily("一纸情书")
font.setPointSize(20)
self.label_3.setFont(font)
- self.label_3.setAlignment(Qt.AlignCenter)
+ self.label_3.setAlignment(QtCore.Qt.AlignCenter)
self.label_3.setObjectName("label_3")
self.verticalLayout.addWidget(self.label_3)
- self.gridLayout_2 = QGridLayout()
+ self.gridLayout_2 = QtWidgets.QGridLayout()
self.gridLayout_2.setObjectName("gridLayout_2")
- self.gridLayout = QGridLayout()
+ self.gridLayout = QtWidgets.QGridLayout()
self.gridLayout.setObjectName("gridLayout")
- self.label_phone = QLabel(Dialog)
+ self.label_phone = QtWidgets.QLabel(Dialog)
self.label_phone.setText("")
self.label_phone.setObjectName("label_phone")
self.gridLayout.addWidget(self.label_phone, 2, 1, 1, 1)
- self.label_7 = QLabel(Dialog)
+ self.label_7 = QtWidgets.QLabel(Dialog)
self.label_7.setObjectName("label_7")
self.gridLayout.addWidget(self.label_7, 1, 0, 1, 1)
- self.lineEdit = QLineEdit(Dialog)
+ self.lineEdit = QtWidgets.QLineEdit(Dialog)
self.lineEdit.setStyleSheet("background:transparent;\n"
"\n"
" border-radius:5px;\n"
@@ -67,43 +68,43 @@ class Ui_Dialog(object):
self.lineEdit.setFrame(False)
self.lineEdit.setObjectName("lineEdit")
self.gridLayout.addWidget(self.lineEdit, 4, 1, 1, 1)
- self.label_5 = QLabel(Dialog)
+ self.label_5 = QtWidgets.QLabel(Dialog)
self.label_5.setObjectName("label_5")
self.gridLayout.addWidget(self.label_5, 3, 0, 1, 1)
- self.label_6 = QLabel(Dialog)
+ self.label_6 = QtWidgets.QLabel(Dialog)
self.label_6.setObjectName("label_6")
self.gridLayout.addWidget(self.label_6, 5, 0, 1, 1)
- self.label_key = QLabel(Dialog)
- self.label_key.setMaximumSize(QSize(400, 16777215))
+ self.label_key = QtWidgets.QLabel(Dialog)
+ self.label_key.setMaximumSize(QtCore.QSize(400, 16777215))
self.label_key.setText("")
self.label_key.setObjectName("label_key")
self.gridLayout.addWidget(self.label_key, 5, 1, 1, 1)
- self.label = QLabel(Dialog)
+ self.label = QtWidgets.QLabel(Dialog)
self.label.setObjectName("label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
- self.label_2 = QLabel(Dialog)
+ self.label_2 = QtWidgets.QLabel(Dialog)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 2, 0, 1, 1)
- self.label_pid = QLabel(Dialog)
+ self.label_pid = QtWidgets.QLabel(Dialog)
self.label_pid.setText("")
self.label_pid.setObjectName("label_pid")
self.gridLayout.addWidget(self.label_pid, 0, 1, 1, 1)
- self.label_name = QLabel(Dialog)
+ self.label_name = QtWidgets.QLabel(Dialog)
self.label_name.setText("")
self.label_name.setObjectName("label_name")
self.gridLayout.addWidget(self.label_name, 3, 1, 1, 1)
- self.label_4 = QLabel(Dialog)
+ self.label_4 = QtWidgets.QLabel(Dialog)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 4, 0, 1, 1)
- self.label_version = QLabel(Dialog)
+ self.label_version = QtWidgets.QLabel(Dialog)
self.label_version.setText("")
self.label_version.setObjectName("label_version")
self.gridLayout.addWidget(self.label_version, 1, 1, 1, 1)
- self.label_8 = QLabel(Dialog)
+ self.label_8 = QtWidgets.QLabel(Dialog)
self.label_8.setObjectName("label_8")
self.gridLayout.addWidget(self.label_8, 6, 0, 1, 1)
- self.label_db_dir = QLabel(Dialog)
- self.label_db_dir.setMaximumSize(QSize(400, 300))
+ self.label_db_dir = QtWidgets.QLabel(Dialog)
+ self.label_db_dir.setMaximumSize(QtCore.QSize(400, 300))
self.label_db_dir.setText("")
self.label_db_dir.setObjectName("label_db_dir")
self.gridLayout.addWidget(self.label_db_dir, 6, 1, 1, 1)
@@ -111,59 +112,60 @@ class Ui_Dialog(object):
self.gridLayout.setColumnStretch(0, 1)
self.gridLayout.setColumnStretch(1, 10)
self.gridLayout_2.addLayout(self.gridLayout, 0, 0, 2, 1)
- self.btn_getinfo = QPushButton(Dialog)
- self.btn_getinfo.setMinimumSize(QSize(0, 60))
+ self.btn_getinfo = QtWidgets.QPushButton(Dialog)
+ self.btn_getinfo.setMinimumSize(QtCore.QSize(0, 60))
self.btn_getinfo.setObjectName("btn_getinfo")
self.gridLayout_2.addWidget(self.btn_getinfo, 0, 1, 1, 1)
- self.checkBox = QCheckBox(Dialog)
+ self.checkBox = QtWidgets.QCheckBox(Dialog)
self.checkBox.setText("")
self.checkBox.setObjectName("checkBox")
self.gridLayout_2.addWidget(self.checkBox, 0, 2, 1, 1)
- self.btn_db_dir = QPushButton(Dialog)
- self.btn_db_dir.setMinimumSize(QSize(0, 60))
+ self.btn_db_dir = QtWidgets.QPushButton(Dialog)
+ self.btn_db_dir.setMinimumSize(QtCore.QSize(0, 60))
self.btn_db_dir.setObjectName("btn_db_dir")
self.gridLayout_2.addWidget(self.btn_db_dir, 1, 1, 1, 1)
- self.checkBox_2 = QCheckBox(Dialog)
+ self.checkBox_2 = QtWidgets.QCheckBox(Dialog)
self.checkBox_2.setText("")
self.checkBox_2.setObjectName("checkBox_2")
self.gridLayout_2.addWidget(self.checkBox_2, 1, 2, 1, 1)
self.verticalLayout.addLayout(self.gridLayout_2)
- self.horizontalLayout_2 = QHBoxLayout()
+ self.horizontalLayout_2 = QtWidgets.QHBoxLayout()
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
- spacerItem2 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+ spacerItem2 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem2)
- self.pushButton_3 = QPushButton(Dialog)
- self.pushButton_3.setMinimumSize(QSize(0, 60))
- self.pushButton_3.setMaximumSize(QSize(100, 16777215))
+ self.pushButton_3 = QtWidgets.QPushButton(Dialog)
+ self.pushButton_3.setMinimumSize(QtCore.QSize(0, 60))
+ self.pushButton_3.setMaximumSize(QtCore.QSize(100, 16777215))
self.pushButton_3.setObjectName("pushButton_3")
self.horizontalLayout_2.addWidget(self.pushButton_3)
- spacerItem3 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+ spacerItem3 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_2.addItem(spacerItem3)
self.verticalLayout.addLayout(self.horizontalLayout_2)
- self.horizontalLayout = QHBoxLayout()
+ self.horizontalLayout = QtWidgets.QHBoxLayout()
self.horizontalLayout.setObjectName("horizontalLayout")
- self.label_ready = QLabel(Dialog)
+ self.label_ready = QtWidgets.QLabel(Dialog)
self.label_ready.setObjectName("label_ready")
self.horizontalLayout.addWidget(self.label_ready)
- self.progressBar = QProgressBar(Dialog)
+ self.progressBar = QtWidgets.QProgressBar(Dialog)
self.progressBar.setProperty("value", 50)
self.progressBar.setObjectName("progressBar")
self.horizontalLayout.addWidget(self.progressBar)
self.verticalLayout.addLayout(self.horizontalLayout)
self.horizontalLayout_3.addLayout(self.verticalLayout)
- spacerItem4 = QSpacerItem(40, 20, QSizePolicy.Expanding, QSizePolicy.Minimum)
+ spacerItem4 = QtWidgets.QSpacerItem(40, 20, QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Minimum)
self.horizontalLayout_3.addItem(spacerItem4)
self.verticalLayout_2.addLayout(self.horizontalLayout_3)
- spacerItem5 = QSpacerItem(20, 40, QSizePolicy.Minimum, QSizePolicy.Expanding)
+ spacerItem5 = QtWidgets.QSpacerItem(20, 40, QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Expanding)
self.verticalLayout_2.addItem(spacerItem5)
self.horizontalLayout_4.addLayout(self.verticalLayout_2)
self.retranslateUi(Dialog)
- QMetaObject.connectSlotsByName(Dialog)
+ QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
- _translate = QCoreApplication.translate
+ _translate = QtCore.QCoreApplication.translate
Dialog.setWindowTitle(_translate("Dialog", "Dialog"))
+ self.btn_help.setText(_translate("Dialog", "使用说明"))
self.label_3.setText(_translate("Dialog", "解密数据库"))
self.label_7.setText(_translate("Dialog", "版本"))
self.label_5.setText(_translate("Dialog", "微信昵称"))
diff --git a/app/ui_pc/tool/pc_decrypt/decryptUi.ui b/app/ui_pc/tool/pc_decrypt/decryptUi.ui
index 9049e6c..4f35411 100644
--- a/app/ui_pc/tool/pc_decrypt/decryptUi.ui
+++ b/app/ui_pc/tool/pc_decrypt/decryptUi.ui
@@ -24,6 +24,13 @@
-
+
-
+
+
+ 使用说明
+
+
+
-
diff --git a/app/ui_pc/tool/pc_decrypt/pc_decrypt.py b/app/ui_pc/tool/pc_decrypt/pc_decrypt.py
index 08f8384..b5a77b2 100644
--- a/app/ui_pc/tool/pc_decrypt/pc_decrypt.py
+++ b/app/ui_pc/tool/pc_decrypt/pc_decrypt.py
@@ -3,8 +3,8 @@ import os.path
import time
import traceback
-from PyQt5.QtCore import pyqtSignal, QThread
-from PyQt5.QtGui import QIcon
+from PyQt5.QtCore import pyqtSignal, QThread, QUrl
+from PyQt5.QtGui import QDesktopServices
from PyQt5.QtWidgets import QWidget, QMessageBox, QFileDialog
from app.decrypt import get_wx_info, decrypt
@@ -19,18 +19,25 @@ class DecryptControl(QWidget, decryptUi.Ui_Dialog):
def __init__(self, parent=None):
super(DecryptControl, self).__init__(parent)
self.setupUi(self)
- self.setWindowTitle('解密')
- self.setWindowIcon(QIcon(':/icons/logo.svg'))
+
self.pushButton_3.clicked.connect(self.decrypt)
self.btn_getinfo.clicked.connect(self.get_info)
self.btn_db_dir.clicked.connect(self.select_db_dir)
self.lineEdit.returnPressed.connect(self.set_wxid)
self.lineEdit.textChanged.connect(self.set_wxid_)
+ self.btn_help.clicked.connect(self.show_help)
self.info = {}
self.lineEdit.setFocus()
self.ready = False
self.wx_dir = None
+ def show_help(self):
+ # 定义网页链接
+ url = QUrl("http://8.146.206.114/post/4")
+
+ # 使用QDesktopServices打开网页
+ QDesktopServices.openUrl(url)
+
# @log
def get_info(self):
try:
diff --git a/decrypt_window.py b/decrypt_window.py
index f267d74..cdf5533 100644
--- a/decrypt_window.py
+++ b/decrypt_window.py
@@ -1,6 +1,7 @@
import ctypes
import sys
+from PyQt5.QtGui import QIcon
from PyQt5.QtWidgets import QApplication, QMessageBox, QWidget
from app.ui_pc.tool.pc_decrypt import pc_decrypt
@@ -11,7 +12,8 @@ ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID("WeChatReport")
class ViewController(QWidget):
def __init__(self):
super().__init__()
-
+ self.setWindowTitle('解密')
+ self.setWindowIcon(QIcon(':/icons/logo.svg'))
self.viewMainWIn = None
self.viewDecrypt = None
@@ -20,16 +22,18 @@ class ViewController(QWidget):
登录界面
:return:
"""
- self.viewDecrypt = pc_decrypt.DecryptControl()
+ self.viewDecrypt = pc_decrypt.DecryptControl(self)
self.viewDecrypt.DecryptSignal.connect(self.show_success)
- self.viewDecrypt.show()
+ # self.viewDecrypt.show()
def show_success(self):
QMessageBox.about(self, "解密成功", "数据库文件存储在\napp/DataBase/Msg\n文件夹下")
+ self.close()
if __name__ == '__main__':
app = QApplication(sys.argv)
view = ViewController()
view.loadPCDecryptView()
+ view.show()
sys.exit(app.exec_())