开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第31天,点击查看活动详情
发现橙光所使用的技术栈: WPF+ELectron+LayaEngine
观察发现在应用安装目录的interpreter/H5
和electron应用常规目录非常相似
特别是resources目录,asar是electron应用特有的格式
那么,我们就直奔electron部分的代码吧,在
interpreter/H5/bin
目录,发现竟然没有压缩混淆
当然这里的代码仅仅是渲染进程的代码,如果想要打开devtools,就要找到主进程代码,那么主进程的代码在哪里呢?
interpreter/H5/resources/app
目录发现了最终代码,electron应用的一个特点就是package.json,这个目录里面也包含了
竟然连
.idea
目录都发布出来了,看来使用webstorm写的呀
既然找到了主进程代码,那么我们就尝试着打开devtools吧,最终锁定了BWindow,如果没有猜错的话,就是对Electron的BrowserWindows的封装
竟然有一个这么明显的函数,那就对不住啦
点击测试,完美打开devtools,至此我们就可以随心所欲的使用devtools的各种调试手段,分析这款软件了。
如果我没有猜错的话,很可能橙光内部也在考虑electron去重写整个编辑器,毕竟wpf只能搞Windows,现在使用electron开发的应用也越来越多