发现橙光所使用的技术栈:
WPF+ELectron+LayaEngine
20GE0BSDJK5QTVYYL9$_RYC.jpg
观察发现在应用安装目录的interpreter/H5
和electron应用常规目录非常相似
image.png
特别是resources目录,asar是electron应用特有的格式
image.png
那么,我们就直奔electron部分的代码吧,在
interpreter/H5/bin
目录,发现竟然没有压缩混淆image.png
当然这里的代码仅仅是渲染进程的代码,如果想要打开devtools,就要找到主进程代码,那么主进程的代码在哪里呢?interpreter/H5/resources/app
目录发现了最终代码,electron应用的一个特点就是package.json,这个目录里面也包含了
image.png
竟然连
.idea
目录都发布出来了,看来使用webstorm写的呀既然找到了主进程代码,那么我们就尝试着打开devtools吧,最终锁定了BWindow,如果没有猜错的话,就是对Electron的BrowserWindows的封装
竟然有一个这么明显的函数,那就对不住啦
点击测试,完美打开devtools
如果我没有猜错的话,很可能橙光内部也在考虑electron去重写整个编辑器,毕竟wpf只能搞Windows