首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何反编译NW.js exe

如何反编译NW.js exe
EN

Stack Overflow用户
提问于 2020-08-08 20:30:20
回答 1查看 5.6K关注 0票数 0

我想解压缩一个用NW.js编译的NW.js应用程序,转换成.exe --我有nw.exe、nw.pak、index.html、package.json、资源dir和其他一些文件夹。启动nw.exe --它运行得很完美,但是我想修改它,我需要源代码。

是否存在从exe中获取JavaScript源的方法?

EN

回答 1

Stack Overflow用户

发布于 2021-02-03 15:00:00

有许多方法可以打包NW.js应用程序。他们都被记录在网站上。但以下是一些你可以尝试的简单方法。

  1. Unlikely,但可能:将.exe重命名为.zip并打开它。可能有项目文件。大多数应用程序都不是这样打包的,因为它使应用程序的每次发布都很慢,因为它必须解压缩每个打开的内容,并将其复制到临时文件夹中。另外,zip将包含您已经拥有的package.json,因此这很可能与您的情况无关。
  2. package.json应该是入口点,我假设index.html将指向该文件中的"main"值。然后,index.html将提取所有其他文件。其中一些可能在服务器上联机,这意味着您无法在本地编辑它们。有些可能在本地文件夹中,可能是“资源”文件夹,因为默认情况下,这不是NW.js附带的内容。
  3. 可能会在更新后下载/替换该应用程序的轻量级版本。如果我这样做,我会将它存储在appData文件夹中。您可以通过执行console.log(nw.App.dataPath)找到这个位置。它是一个用户帐户特定的文件夹,将在一个文件夹中,用户的应用程序的名称定义在package.json中。虽然这不太可能,但这是可能的。
  4. 可以使用V8快照来“保护”原始源代码。如果使用此方法,您将无法恢复原始源代码。到目前为止,还没有记录到有人反向工程V8快照的情况。虽然这是可能的,但它将需要一个非常高的技术水平和知识,跨几个disciplines.
  5. The源代码,您发现也可能是“丑陋”。意思是,虽然它都会在那里,但它将完全模糊,使它相当无用的阅读。而不是

代码语言:javascript
复制
function getUserData (url) {
  axios.get(url)
  .then(function (response) {
    return response.data;
  })
}

就像

代码语言:javascript
复制
function a(b){c.d(b).then(e=>e.f)}

不太清楚丑化时发生了什么。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63319964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档