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