WeChatMsg/wxManager/decrypt/common.py

56 lines
1.4 KiB
Python
Raw Normal View History

2025-03-28 21:29:18 +08:00
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
@Time : 2025/3/7 16:39
@Author : SiYuan
@Email : 863909694@qq.com
@File : MemoTrace-common.py
@Description :
"""
import psutil
import win32api
if __name__ == '__main__':
pass
def get_version(pid):
p = psutil.Process(pid)
version_info = win32api.GetFileVersionInfo(p.exe(), '\\')
version = f"{win32api.HIWORD(version_info['FileVersionMS'])}.{win32api.LOWORD(version_info['FileVersionMS'])}.{win32api.HIWORD(version_info['FileVersionLS'])}.{win32api.LOWORD(version_info['FileVersionLS'])}"
return version
class WeChatInfo:
def __init__(self):
self.pid = 0
self.version = '0.0.0.0'
self.account_name = ''
self.nick_name = ''
self.phone = ''
self.wx_dir = ''
self.key = ''
self.wxid = ''
self.errcode: int = 404 # 405: 版本不匹配, 404: 重新登录微信, other: 未知错误
self.errmsg: str = '错误!请登录微信。'
def __str__(self):
return f'''
pid: {self.pid}
version: {self.version}
account_name: {self.account_name}
nickname: {self.nick_name}
phone: {self.phone}
wxid: {self.wxid}
wx_dir: {self.wx_dir}
key: {self.key}
'''
def to_json(self):
return {
'version': self.version,
'nickname': self.nick_name,
'wx_dir': self.wx_dir,
'wxid': self.wxid
}