docs: readme

This commit is contained in:
msojocs 2023-08-27 09:24:31 +08:00
parent cec876c760
commit 0e57592ad7
3 changed files with 11 additions and 38 deletions

View File

11
README.md Normal file
View File

@ -0,0 +1,11 @@
# 微信小程序编译器 Linux 版本
# 说明
本项目基于官方 Windows 版本运行逻辑实现。
# 实现思路
1. 使用 IDA 取得伪代码,与函数地址
2. 使用frida配合函数地址对各个函数进行hook参见 [frida-wx-compiler](https://github.com/msojocs/frida-wx-compiler)
3. 在Linux下根据伪代码复现逻辑使用frida来校对函数处理前和处理后的数据是否符合实际

View File

@ -1,38 +0,0 @@
# 微信小程序编译器 Linux 版本
# 说明
本项目在官方 Linux 简版的基础上,实现了适用于 Linux 的懒加载版本。
# 实现思路
## 实现语言
由于项目中用到了 `NodeJS` ,所以为了避免多余的环境依赖,使用 `NodeJS` 实现。
## 实现方案
经过查找,官方有开放出一个 npm 包 [miniprogram-compiler](https://www.npmjs.com/package/miniprogram-compiler)
此 npm 包中包含了 Linux 的原生实现,但没有懒加载功能;
懒加载实现是对比 windows 版本 与 Linux 简版 的生成代码,找出其中的规律;
按照规律,将 Linux 版本代码修改为符合 windows 版本结构的代码。
## 目录结构
```
.
├── generatemd5.js
├── nodejs --- 预览编译器
├── node_modules
├── package.json
├── package-lock.json
├── README.md
├── test --- 测试用例
├── wcc_node --- 可视化编译器
├── wcc_node_old --- 可视化编译器 - 旧
├── wcsc_node_old --- 可视化编译器 - 旧
└── wine --- windows版本编译器
```