立即注册 找回密码

QQ登录

只需一步,快速开始

查看: 192|回复: 0
打印 上一主题 下一主题

反编译微信小程序 解决$gwx is not defined和__vd_version_info__ is not defined ...

[复制链接]
由于微信小程序升级的原因,最近 github 上的 wxappUnpacker-master 小程序反编译工具已部分失效
报错:$gwx is not defined 新的反编译脚本亲测可行。
1.下载 nodejs
下载地址: nodejs
打开cmd,输入node -v命令,查看是否安装成功
2.下载反编译脚本(2019新版)
下载地址 :wxappUnpacker
修改wxappUnpacker文件中的 wuWxss.js
  1. function runVM(name, code) {
  2. ? ?? ?// let wxAppCode = {}, handle = {cssFile: name};
  3. ? ?? ?// let vm = new VM({
  4. ? ?? ?//? ? sandbox: Object.assign(new GwxCfg(), {
  5. ? ?? ?//? ?? ? __wxAppCode__: wxAppCode,
  6. ? ?? ?//? ?? ? setCssToHead: cssRebuild.bind(handle)
  7. ? ?? ?//? ? })
  8. ? ?? ?// });
  9. ? ?? ?// vm.run(code);
  10. ? ?? ?// for (let name in wxAppCode) if (name.endsWith(".wxss")) {
  11. ? ?? ?//? ? handle.cssFile = path.resolve(frameName, "..", name);
  12. ? ?? ?//? ? wxAppCode[name]();
  13. ? ?? ?// }

  14. ? ?? ?let wxAppCode = {};
  15. ? ?? ?let handle = {cssFile: name};
  16. ? ?? ?let gg = new GwxCfg();
  17. ? ?? ?let tsandbox = {
  18. ? ?? ?? ?$gwx: GwxCfg.prototype["$gwx"],
  19. ? ?? ?? ?__mainPageFrameReady__: GwxCfg.prototype["$gwx"],? ?//解决 $gwx is not defined
  20. ? ?? ?? ?__vd_version_info__: GwxCfg.prototype["$gwx"],??//解决 __vd_version_info__ is not defined
  21. ? ?? ?? ?__wxAppCode__: wxAppCode,
  22. ? ?? ?? ?setCssToHead: cssRebuild.bind(handle)
  23. ? ?? ?}

  24. ? ?? ?let vm = new VM({sandbox: tsandbox});
  25. ? ?? ?vm.run(code);
  26. ? ?? ?for (let name in wxAppCode) {
  27. ? ?? ?? ?if (name.endsWith(".wxss")) {
  28. ? ?? ?? ?? ?handle.cssFile = path.resolve(frameName, "..", name);
  29. ? ?? ?? ?? ?wxAppCode[name]();
  30. ? ?? ?? ?}
  31. ? ?? ?}
  32. ? ?}
复制代码
3.root手机或电脑安卓模拟器
一台带root的手机,或者用电脑安装安卓模拟器,获取root权限在根目录下找到这个路径
/data/data/com.tencent.mm/MicroMsg/{id数字串}/appbrand/pkg/
目录下扩展名为.wxapkg的小程序文件打包后发送到电脑上
cmd 切换到 反编译脚本的目录执行以下的命令
  1. npm install esprima
  2. npm install css-tree
  3. npm install cssbeautify
  4. npm install vm2
  5. npm install uglify-es
  6. npm install js-beautify
  7. npm install escodegen
复制代码
安装完成后

4.使用node wuWxapkg.js 反编译命令
命令格式:node wuWxapkg.js [-d] //files
例如:我有一个需要反编译的文件 _-931978356_15.wxapkg 在D盘根目录下的workSpace文件夹,那么就输出命令
  1. node wuWxapkg.js D:\workSpace_-931978356_15.wxapkg
复制代码


哎...今天够累的,签到来了...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|Archiver|梦飞文学网 ( 赣ICP备15004458号-1 )???

GMT+8, 2019-11-4 16:07 , Processed in 0.069410 second(s), 27 queries .

Powered by Discuz! X3.4 ? 2001-2013 Comsenz Inc & yjwx

快速回复 返回顶部 返回列表