This commit is contained in:
2025-01-14 16:58:35 +08:00
parent b5ea82a2ed
commit ce7aa56739
12 changed files with 8197 additions and 8184 deletions
Binary file not shown.
+2742 -2742
View File
File diff suppressed because it is too large Load Diff
+2673 -2673
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
+2672 -2672
View File
File diff suppressed because it is too large Load Diff
Binary file not shown.
+70 -70
View File
@@ -707,10 +707,50 @@
('pkg_resources',
'c:\\program files\\python\\lib\\site-packages\\pkg_resources\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.requirements',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\requirements.py',
'PYMODULE'),
('pkg_resources._vendor.pyparsing',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\pyparsing.py',
'PYMODULE'),
('uuid', 'c:\\program files\\python\\lib\\uuid.py', 'PYMODULE'),
('netbios',
'c:\\program files\\python\\lib\\site-packages\\win32\\lib\\netbios.py',
'PYMODULE'),
('pkg_resources._vendor.packaging',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.tags',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\tags.py',
'PYMODULE'),
('pkg_resources._vendor.six',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\six.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.__about__',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__about__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.specifiers',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\specifiers.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.markers',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\markers.py',
'PYMODULE'),
('pkg_resources._vendor.packaging._structures',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_structures.py',
'PYMODULE'),
('pkg_resources._vendor',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.appdirs',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\appdirs.py',
@@ -723,53 +763,13 @@
'c:\\program '
'files\\python\\lib\\site-packages\\win32comext\\shell\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.requirements',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\requirements.py',
'PYMODULE'),
('pkg_resources._vendor.pyparsing',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\pyparsing.py',
'PYMODULE'),
('uuid', 'c:\\program files\\python\\lib\\uuid.py', 'PYMODULE'),
('netbios',
'c:\\program files\\python\\lib\\site-packages\\win32\\lib\\netbios.py',
'PYMODULE'),
('pkg_resources._vendor.packaging._structures',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_structures.py',
'PYMODULE'),
('pkg_resources._vendor.six',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\six.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.version',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\version.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.tags',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\tags.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.specifiers',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\specifiers.py',
'PYMODULE'),
('pkg_resources._vendor',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\__init__.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.utils',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\utils.py',
'PYMODULE'),
('pkg_resources._vendor.packaging.markers',
('pkg_resources._vendor.packaging.version',
'c:\\program '
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\markers.py',
'files\\python\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\version.py',
'PYMODULE'),
('pkg_resources._vendor.packaging._compat',
'c:\\program '
@@ -786,8 +786,8 @@
('pkg_resources.py2_warn',
'c:\\program files\\python\\lib\\site-packages\\pkg_resources\\py2_warn.py',
'PYMODULE'),
('stringprep', 'c:\\program files\\python\\lib\\stringprep.py', 'PYMODULE'),
('_py_abc', 'c:\\program files\\python\\lib\\_py_abc.py', 'PYMODULE'),
('stringprep', 'c:\\program files\\python\\lib\\stringprep.py', 'PYMODULE'),
('Crypto.Cipher.Blowfish',
'c:\\program files\\python\\lib\\site-packages\\Crypto\\Cipher\\Blowfish.py',
'PYMODULE'),
@@ -891,17 +891,13 @@
('setuptools',
'c:\\program files\\python\\lib\\site-packages\\setuptools\\__init__.py',
'PYMODULE'),
('setuptools._vendor.packaging.tags',
('setuptools._vendor.packaging.version',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\tags.py',
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\version.py',
'PYMODULE'),
('setuptools._vendor.packaging._compat',
('setuptools._vendor.packaging._structures',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_compat.py',
'PYMODULE'),
('setuptools._vendor.packaging.specifiers',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\specifiers.py',
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_structures.py',
'PYMODULE'),
('setuptools._vendor.packaging.requirements',
'c:\\program '
@@ -915,44 +911,48 @@
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\extern\\__init__.py',
'PYMODULE'),
('setuptools._vendor.packaging.tags',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\tags.py',
'PYMODULE'),
('setuptools._vendor.pyparsing',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\pyparsing.py',
'PYMODULE'),
('setuptools._vendor',
('setuptools._vendor.packaging.specifiers',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\__init__.py',
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\specifiers.py',
'PYMODULE'),
('setuptools._vendor.packaging.version',
('setuptools._vendor.packaging',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\version.py',
'PYMODULE'),
('setuptools._vendor.packaging.utils',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\utils.py',
'PYMODULE'),
('setuptools._vendor.packaging._structures',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_structures.py',
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\__init__.py',
'PYMODULE'),
('setuptools._vendor.packaging.__about__',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\__about__.py',
'PYMODULE'),
('setuptools._vendor.six',
'c:\\program files\\python\\lib\\site-packages\\setuptools\\_vendor\\six.py',
'PYMODULE'),
('setuptools._vendor.packaging.markers',
('setuptools._vendor.packaging.utils',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\markers.py',
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\utils.py',
'PYMODULE'),
('setuptools._vendor.ordered_set',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\ordered_set.py',
'PYMODULE'),
('setuptools._vendor.packaging',
('setuptools._vendor.packaging._compat',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\__init__.py',
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\_compat.py',
'PYMODULE'),
('setuptools._vendor.packaging.markers',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\packaging\\markers.py',
'PYMODULE'),
('setuptools._vendor.six',
'c:\\program files\\python\\lib\\site-packages\\setuptools\\_vendor\\six.py',
'PYMODULE'),
('setuptools._vendor',
'c:\\program '
'files\\python\\lib\\site-packages\\setuptools\\_vendor\\__init__.py',
'PYMODULE'),
('setuptools.msvc',
'c:\\program files\\python\\lib\\site-packages\\setuptools\\msvc.py',
Binary file not shown.
+6 -6
View File
@@ -15,7 +15,7 @@ IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
yourself tracking down the missing module. Thanks!
missing module named _posixsubprocess - imported by subprocess (optional), multiprocessing.util (delayed)
missing module named org - imported by copy (optional)
missing module named 'org.python' - imported by copy (optional), xml.sax (delayed, conditional), setuptools.sandbox (conditional)
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional), zipimport (top-level)
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional), zipimport (top-level), PyInstaller.loader.pyimod02_archive (delayed, conditional)
missing module named urllib.pathname2url - imported by urllib (conditional), PyInstaller.lib.modulegraph._compat (conditional)
@@ -35,21 +35,21 @@ missing module named multiprocessing.BufferTooShort - imported by multiprocessin
missing module named multiprocessing.AuthenticationError - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
missing module named asyncio.DefaultEventLoopPolicy - imported by asyncio (delayed, conditional), asyncio.events (delayed, conditional)
missing module named readline - imported by cmd (delayed, conditional, optional), code (delayed, conditional, optional), pdb (delayed, optional)
missing module named 'org.python' - imported by pickle (optional), xml.sax (delayed, conditional), setuptools.sandbox (conditional)
missing module named org - imported by pickle (optional)
missing module named grp - imported by shutil (optional), tarfile (optional), pathlib (delayed), distutils.archive_util (optional)
missing module named pwd - imported by posixpath (delayed, conditional), shutil (optional), tarfile (optional), pathlib (delayed, conditional, optional), http.server (delayed, optional), webbrowser (delayed), netrc (delayed, conditional), getpass (delayed), distutils.util (delayed, conditional, optional), distutils.archive_util (optional), psutil (optional)
missing module named posix - imported by os (conditional, optional), shutil (conditional)
missing module named 'multiprocessing.forking' - imported by C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_multiprocessing.py (optional)
missing module named 'win32com.gen_py' - imported by win32com (conditional, optional), C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_win32comgenpy.py (top-level)
missing module named 'multiprocessing.forking' - imported by C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_multiprocessing.py (optional)
missing module named pyimod03_importers - imported by PyInstaller.loader.pyimod02_archive (delayed, conditional), C:\Program Files\python\Lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_pkgres.py (top-level)
missing module named 'com.sun' - imported by pkg_resources._vendor.appdirs (delayed, conditional, optional)
missing module named com - imported by pkg_resources._vendor.appdirs (delayed)
missing module named 'pkg_resources.extern.pyparsing' - imported by pkg_resources._vendor.packaging.markers (top-level), pkg_resources._vendor.packaging.requirements (top-level)
missing module named _uuid - imported by uuid (optional)
missing module named __builtin__ - imported by pkg_resources._vendor.pyparsing (conditional), setuptools._vendor.pyparsing (conditional)
missing module named ordereddict - imported by pkg_resources._vendor.pyparsing (optional), setuptools._vendor.pyparsing (optional)
missing module named StringIO - imported by Crypto.Util.py3compat (conditional), PyInstaller.lib.modulegraph._compat (conditional), PyInstaller.lib.modulegraph.zipio (conditional), setuptools._vendor.six (conditional), pkg_resources._vendor.six (conditional)
missing module named _manylinux - imported by pkg_resources._vendor.packaging.tags (delayed, optional), setuptools._vendor.packaging.tags (delayed, optional)
missing module named StringIO - imported by Crypto.Util.py3compat (conditional), PyInstaller.lib.modulegraph._compat (conditional), PyInstaller.lib.modulegraph.zipio (conditional), setuptools._vendor.six (conditional), pkg_resources._vendor.six (conditional)
missing module named 'com.sun' - imported by pkg_resources._vendor.appdirs (delayed, conditional, optional)
missing module named com - imported by pkg_resources._vendor.appdirs (delayed)
missing module named pkg_resources.extern.packaging - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
missing module named pkg_resources.extern.appdirs - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
missing module named 'pkg_resources.extern.six.moves' - imported by pkg_resources (top-level), pkg_resources._vendor.packaging.requirements (top-level)
+6 -6
View File
@@ -367,7 +367,7 @@ imported by:
<a target="code" href="" type="text/plain"><tt>'org.python'</tt></a>
<span class="moduletype">MissingModule</span> <div class="import">
imported by:
<a href="#pickle">pickle</a>
<a href="#copy">copy</a>
&#8226; <a href="#setuptools.sandbox">setuptools.sandbox</a>
&#8226; <a href="#xml.sax">xml.sax</a>
@@ -5035,8 +5035,8 @@ imported by:
<a target="code" href="///C:/program%20files/python/lib/copy.py" type="text/plain"><tt>copy</tt></a>
<span class="moduletype">SourceModule</span> <div class="import">
imports:
<a href="#copyreg">copyreg</a>
&#8226; <a href="#org">org</a>
<a href="#'org.python'">'org.python'</a>
&#8226; <a href="#copyreg">copyreg</a>
&#8226; <a href="#types">types</a>
&#8226; <a href="#weakref">weakref</a>
@@ -19325,7 +19325,7 @@ imported by:
<a target="code" href="" type="text/plain"><tt>org</tt></a>
<span class="moduletype">MissingModule</span> <div class="import">
imported by:
<a href="#copy">copy</a>
<a href="#pickle">pickle</a>
</div>
@@ -19702,8 +19702,7 @@ imported by:
<a target="code" href="///C:/program%20files/python/lib/pickle.py" type="text/plain"><tt>pickle</tt></a>
<span class="moduletype">SourceModule</span> <div class="import">
imports:
<a href="#'org.python'">'org.python'</a>
&#8226; <a href="#_compat_pickle">_compat_pickle</a>
<a href="#_compat_pickle">_compat_pickle</a>
&#8226; <a href="#_pickle">_pickle</a>
&#8226; <a href="#argparse">argparse</a>
&#8226; <a href="#codecs">codecs</a>
@@ -19712,6 +19711,7 @@ imports:
&#8226; <a href="#functools">functools</a>
&#8226; <a href="#io">io</a>
&#8226; <a href="#itertools">itertools</a>
&#8226; <a href="#org">org</a>
&#8226; <a href="#pprint">pprint</a>
&#8226; <a href="#re">re</a>
&#8226; <a href="#struct">struct</a>
BIN
View File
Binary file not shown.
+28 -15
View File
@@ -13,13 +13,20 @@ class NavicatPassword:
data = binascii.unhexlify(encrypted_str.lower())
cipher = AES.new(self.aes_key, AES.MODE_CBC, self.aes_iv)
decrypted = cipher.decrypt(data)
# 处理可能的填充字符
decrypted = decrypted.rstrip(b'\x00')
# 尝试UTF-8解码,失败则使用latin1
try:
return decrypted.decode('utf-8')
except UnicodeDecodeError:
return decrypted.decode('latin1')
# 处理填充字符和不可打印字符
# 仅去除常见的填充字符
decrypted = decrypted.rstrip(b'\x00\x03\x04\x05')
# 直接尝试解码,不进行任何字符过滤
encodings = ['utf-8', 'latin1', 'cp1252', 'gbk', 'big5']
for encoding in encodings:
try:
# 直接返回解码结果,保留所有字符
return decrypted.decode(encoding)
except UnicodeDecodeError:
continue
# 最后尝试,替换无法解码的字符
return decrypted.decode('latin1', errors='replace')
except Exception as e:
raise ValueError(f"解密失败: {str(e)}")
@@ -27,6 +34,7 @@ class App:
def __init__(self, root):
self.root = root
self.root.title("Navicat密码解密工具")
self.result_window = None # 用于存储结果窗口
self.password = tk.StringVar()
self.create_widgets()
@@ -36,16 +44,21 @@ class App:
tk.Entry(self.root, textvariable=self.password, width=30).grid(row=0, column=1)
tk.Button(self.root, text="解密", command=self.decrypt_password).grid(row=1, column=1, pady=10)
def show_result(self, result):
top = tk.Toplevel(self.root)
top.title("解密结果")
# 如果结果窗口已经存在,则先销毁
if self.result_window is not None:
self.result_window.destroy()
self.result_window = tk.Toplevel(self.root)
self.result_window.title("解密结果")
tk.Label(top, text="解密后的密码:").pack(padx=20, pady=5)
tk.Label(self.result_window, text="解密后的密码:").pack(padx=20, pady=5)
# 使用支持更多字符的字体
font = ('Courier New', 12)
result_text = tk.Text(top, height=1, width=30, font=font)
# 使用更通用的字体,添加字体回退
font_family = ('Consolas', 'Courier New', 'Monaco', 'DejaVu Sans Mono')
font_size = 12
result_text = tk.Text(self.result_window, height=1, width=30, font=(font_family[0], font_size))
result_text.insert(tk.END, result)
result_text.config(state=tk.DISABLED)
result_text.pack(padx=20, pady=5)
@@ -54,7 +67,7 @@ class App:
self.root.clipboard_clear()
self.root.clipboard_append(result)
tk.Button(top, text="复制密码", command=copy_to_clipboard).pack(pady=10)
tk.Button(self.result_window, text="复制密码", command=copy_to_clipboard).pack(pady=10)
def decrypt_password(self):
password = self.password.get().strip()