用Spy++搜索窗口
微信的界面换成了QT(Qt51514)而原本的微信界面框架是Duilib
通过遍历微信QT的控件,可以看到很多mmui控件并且是基于QWidget,而不是Quick(用QML做界面)同时控件也没有用上objectName进行标识,而是用信号槽绑定逻辑(老版本微信的Duilib用XML做界面,控件有名字,容易被定位到)
老版本是面向过程编程,比较简单粗暴,容易被定位和调用
bool SendMsg(char* cReciverId, char* cMsgData)
新版本是面向对象编程,对象封装比较复杂,调用也麻烦
并且用了:并行模式库 (PPL) ,按任务的形式执行业务代码
// 实际上封装很多层
class SendMsgTask{
char* cReciverId;
char* cMsgData;
}
bool RunTask(SendMsgTask objSendMsgTask)
数据库用的是腾讯开源的wcdb:0f4K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6f1k6h3&6U0k6h3&6@1i4K6u0r3N6$3y4V1j5R3`.`.
熟悉源码去定位不难,但特殊的的是数据库密钥会被清理掉,不能通过内存搜索
4.0的微信换了界面框架,业务层逻辑架构也大改,并且上了反逆向的手段
传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!