我正在使用 Electron 开发一个桌面应用程序。我在单独的进程中执行某些任务以避免锁定渲染器进程。我通过调用require('child_process').fork
. 这可以在所有平台(linux、windows、osx)上按预期工作。但是,当我使用生成的 NSIS 安装程序打包应用electron-builder
程序并执行安装的二进制文件时,fork 失败。我已经从命令行启动了这个二进制文件以查看任何错误输出,但这并没有帮助。发生这种情况时,派生子进程的父进程会收到exit
带有退出代码 1 的回调。这只是 NSIS 安装程序安装的可执行文件的问题。如果我运行electron-builder
with--dir
选项并从解压缩目录运行可执行文件,它工作正常。
这让我相信它与安装程序在可执行文件上设置的权限有关。我玩过权限,但没有任何成功。我不确定哪些权限负责允许/防止这种行为。