问题标签 [asar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
171 浏览

javascript - Electron 无法在其已安装的依赖项上找到反应模块

我的应用在npm run dev&/或yarn run build&&中运行良好yarn start

但是打包版本无法找到依赖项的依赖项,特别是 react-player 或 react-countup 中的“react”。

它是一个 React、Firebase、Redux、REST API 应用程序。

在对样板进行大量操作之前,我先检查了它的包装并正确打开。只是剥离了一些计数器逻辑并放入一些基本样式等。

我已经安装了(firebase,react-player,react-countup)依赖app/package.jsonroot/pkg json

不确定应用程序查找 React 的能力如何/为什么会因我所做的任何事情而改变。我想我已经有一段时间没有接触任何配置了。即便如此,它main.dev.js也不是main.prod.js- 看起来它已经通过了转译器,而且我无论如何也不知道如何编辑。

电子应用程序网络依赖错误

细节:错误表明它无法通过通用 JS 加载器找到“反应”,将模块化 js 加载到浏览器中。那是它加载 react-countup 包的时候。如果我删除该 npm pkg 然后重新打包我的应用程序,它会在我安装的下一个依赖项(react-player)上失败并出现相同的错误。如果我杀了它,它会移动到Prismic-ReactJSpkg 上。

我是否在错误的级别安装了软件包?(app/package.json) 我是否需要以某种方式链接依赖项的依赖项?是否有我偶然调整的 main.js 设置?

任何人都可以帮忙吗?

0 投票
1 回答
568 浏览

vue.js - 带有 Vue 和 vue-cli-plugin-electron-builder 的电子应用程序无法与 Tesseract.js 一起使用

我用 vue-service-cli 创建了一个项目。尝试使用 tesseract OCR 但我无法在本地和远程加载 lang.traineddata。我已经尝试了来自 tesseract.js repo 和其他许多方法的示例(它们有效),但没有结果。当我尝试加载它们时,我看到标准错误:

我怀疑这是 .asar 存档格式(来自vue-cli-plugin-electron-builder)的问题,该格式位于“/node_modules/electron/dist/resources/electron.asar”中。我可以从 ./public 加载文件,但我被读取的语言文件必须在进程目录中 - 我不知道这是不是真的。某些配置不能一起工作。

我的代码

我的依赖

编辑:我注意到https://github.com/auth0-blog/electron-vue项目与 Tesseract.js 配合得很好。该项目使用 Vue 但没有 vue-vli-service,这意味着它没有确认上述论点的 vue-cli-plugin-electron-builder。我仍在寻找使用 vue-cli 的解决方案

0 投票
0 回答
33 浏览

database - 如何保护电子应用程序中的数据库密码?

在 Electron 中,Asar 可以解包,所以用户可以看到源代码。但是如果项目使用的是数据库,用户可以看到数据库密码,即使我们制作了一个 .env 文件。有没有办法保护数据库密码?

0 投票
1 回答
5716 浏览

javascript - 使用electron-builder时如何修改app.asar的文件夹结构?

我正在使用 create-react-app (CRA) 创建和构建我的前端代码。我的(简化的)文件夹结构如下所示:

我的 npm 脚本:

当我运行“构建”时,项目被构建并且有一个build包含所有内容的文件夹,然后电子使用它来创建app.asar文件。当我提取内容时,我看到以下结构:

electron-builder 是如何知道build从我的项目文件夹中获取该文件夹的?我尝试通过使用"build"package.json 的字段来解决这个问题,如下所示:

并将我的build文件夹重命名为,app但随后出现以下错误:

似乎电子仍然试图electron.jsbuild文件夹中运行,该文件夹现在不存在于app.asar.

如何修改文件中的文件结构app.asar?它必须包含一个build文件夹吗?理想情况下,我希望具有以下结构:

我尝试更多地修改该"files"字段,我尝试过"extraFiles""buildResources"但即使我可以app.asar按照我想要的方式获取文件夹结构,我仍然会收到错误:

0 投票
0 回答
134 浏览

electron - 为什么使用 asar 标志打包时电子应用程序无法找到 R 文件的正确路径?

我正在尝试在电子应用程序中从 JS 调用 R,该控制台记录 R 版本和密码。当使用 electron-builder 和 electron-packager 打包没有 asar 标志时,它可以完美运行(参见以下屏幕截图) 在此处输入图像描述

但是,当我使用 asar 构建时yarn run build --asar,我没有得到预期的输出(参见下面的屏幕截图) 在此处输入图像描述 主要问题是应用程序没有获得 R 文件的正确路径(参见下面的屏幕截图)。

在此处输入图像描述

虽然,我已经使用path.

重现错误

  1. 在 Windows 10 中,从此ftp 链接下载源代码
  2. 假设您已经在ImShot_App_minimal文件夹运行的 vscode 终端中安装了 vscode、node.jsyarn install
  3. 然后运行yarn run build --asar
  4. 运行imshot-minimal-win32-x64\imshot-minimal.exe并在控制台日志中检查 R 文件的路径
  5. 获得预期的结果运行第 4 步但没有 --asar 标志

走错路的原因是什么?以及如何解决这个问题?

谢谢

0 投票
1 回答
303 浏览

vue.js - Electron.js \app.asar\node_modules\{modulename}\bin\file.exe 未找到

我正在使用 vue cli 开发 electron.js 应用程序。我想使用使用 handbrakeCLI 对文件进行编码的 handbrake-js。handbrake.js 工作得很好,但是在我生成之后,它会导致HandbrakeCLINotFound: HandbrakeCLI application not found: C:\Users\user\OneDrive\Documents\Projects\Electron.js Projects\video-compressor\dist_electron\win-unpacked\resources\app.asar\node_modules\handbrake-js\bin\HandbrakeCLI.exe.

在我的 app.asar.unpacked 文件夹中,一切看起来都很棒。手刹 cli 存在。

0 投票
0 回答
44 浏览

javascript - 如何读取反编译的 Electron ASAR?

我使用这篇文章反编译了一个 Electron 应用程序

当我浏览代码时,它看起来并不完整。

所以是 js 文件之一。我不知道它是否加密或如何阅读它。

我尝试在此处美化 js ,但为什么看起来很奇怪?

我如何阅读并正确运行它?

这是 javscript 的一个小示例:

0 投票
1 回答
1076 浏览

node.js - electron-builder 安装程序:主进程发生 JavaScript 错误,错误:找不到指定的模块

我正在使用电子11.1.0 和电子生成器22.10.5

我为我的电子应用程序创建了一个安装程序,该应用程序正在native module使用电子生成器,它在我的笔记本电脑上工作正常,但在我朋友的笔记本电脑上我收到错误

我已检查C:\some\path\My-Electron-App\resources\app.asar.unpacked\node_modules\obs-studio-node\obs_studio_client.node文件是否存在。

我猜它的asar相关问题与native module. 我尝试通过添加"asarUnpack": ["**/*.node"]我的build配置但没有帮助。

我该如何解决这个问题?

0 投票
1 回答
678 浏览

electron - 如何加密 ASAR 档案?

是否有可能加密 ASAR 包,以便可能的恶意行为者几乎无法立即对我的应用程序进行逆向工程?到目前为止,我还没有找到任何关于这方面的信息。

0 投票
0 回答
68 浏览

parsing - asar 档案的标题格式是怎样的?

我一直在尝试为Electron 使用的asar 档案创建一个解析器。我认为标题格式的格式部分非常模糊。我搜索了许多此类解析器的开源实现,例如thisthisthis,它们似乎都不同意每个字节序列代表什么。注释或变量名也没有真正的帮助。

那么,长话短说,我应该如何解释标头中的每个字节序列?到目前为止,我发现字节 12 到字节 16 表示标头 JSON 的字符串大小,然后从字节 16 到之前指定的字符串大小是实际的 JSON 字符串。但除此之外,我不知道前面的 12 个字节是什么意思。