反编译微信小程序wxapkg文件编译命令# node .\wuWxapkg.js 文件路径
# node wuWxapkg.js 文件路径
_-452579966_118.wxapkg
node .\wuWxapkg.js E:\dannisi\源码\2\_-452579966_118.wxapkg
node wuWxapkg.js E:\dannisi\源码\2\iclub.wxapkg
E:\dannisi\源码\2\iclub.wxapkg
下载依赖npm install esprima
npm install css-tree
npm install cssbeautify
npm install vm2
npm install uglify-es
遇到问题解决方案1、Module build failed: Error: Cannot find module ‘escodegen’ (我遇到的) npm i --save-dev escodegen
2、 Error: Cannot find module ‘cheerio’(我遇到的) npm install uglify-es --save npm install esprima --save npm install css-tree --save npm install cssbeautify --save npm install vm2 --save npm install uglify-es --save npm install js-beautify --save npm install escodegen --save npm install cheerio --save
3 未识别的包 说明拿到的两个.wxapkg文件里,当前反编译的包不是工程文件夹,再去RE文件管理器看下,是不是还有另一个文件呢!这个.wxapkg里面都是微信的基础包,是无需还原的!!! 很多博客都没说明这块,害我以为没反编译成功!
4 SyntaxError: Unexpected end of input 解决wxss缺失问题 解决方案一、 修改wxappUnpacker中wuWxss.js部分代码,具体如下:
function runVM(name,code){
let wxAppCode={},handle={cssFile:name};
let gg = new GwxCfg();
let tsandbox = {$gwx:GwxCfg.prototype["$gwx"],__mainPageFrameReady__:GwxCfg.prototype["$gwx"],__wxAppCode__:wxAppCode,setCssToHead:cssRebuild.bind(handle)};
let vm = new VM({sandbox:tsandbox});
vm.run(code);
for(let name in wxAppCode)if(name.endsWith(".wxss")){
handle.cssFile=path.resolve(frameName,"..",name);
wxAppCode[name]();
}
}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
解决方案二、 拿取正常的wxappUnpacker中的wuWxss.js文件,覆盖掉出错的文件 |