如何从已编译的 Electron 应用程序中获取源文件?
Posted
技术标签:
【中文标题】如何从已编译的 Electron 应用程序中获取源文件?【英文标题】:How can I get source files from a compiled Electron application? 【发布时间】:2020-07-07 06:23:24 【问题描述】:我如何解压一个使用 Electron 构建的适用于 Mac OS 的 .app 应用程序?我想查看源文件,但不知道如何访问它们。
【问题讨论】:
-> "electron unpack" / "electron decompile" 非常感谢!我正在搜索这些关键字。 致downvoters:我认为这是***的一个合理问题,除了可能this one之外,我没有看到重复,但那个没有收到任何有用的答案。 【参考方案1】:通常,Electron 应用程序是使用 Electron 的 asar
工具捆绑的。通常,您可以使用相同的工具解压缩这些应用的源代码。
如果应用是使用不同的工具捆绑的,您需要自行研究捆绑过程是否可以轻松逆转。
如果没有安装asar
,可以通过npm
安装:
npm install -g asar
然后尝试使用asar
解压源码:
cd /Applications/Slack.app/Contents/Resources
mkdir example-sourcecode
asar extract app.asar example-sourcecode
我在this blog post找到了以上信息。
【讨论】:
非常感谢。我这样做会得到这个错误:“错误:EISDIR:对目录的非法操作,读取” @RedouanAzizim 对不起,我没有要测试的 Mac OS 设备。听起来您可能需要覆盖某些文件权限,或者将您的终端会话提升到更高权限的用户。 不起作用。会给你 ` [ERR_BUFFER_OUT_OF_BOUNDS]: Attempt to access memory outside buffer bounds` 错误。 也许尝试不在 Applications 文件夹中执行此操作,这通常需要管理员身份验证才能进行更改。可以解压到其他文件夹吗?以上是关于如何从已编译的 Electron 应用程序中获取源文件?的主要内容,如果未能解决你的问题,请参考以下文章