Javascript 使用密码时出现node-7z enoint错误7zip bin

Javascript 使用密码时出现node-7z enoint错误7zip bin,javascript,node.js,electron,Javascript,Node.js,Electron,我正试图在我的Electron应用程序中使用node-7z来解密受密码保护的zip文件,但每当我传递密码时,我都会收到一个eNot错误。我包括7zip-bin,并且.7za文件存在于该位置,当我输入console.log 7zip-bin.path7za时,我将获得一个有效的exe。 如果我提取了一个没有任何密码的zip,那么就没有问题,并且我已经在我的项目根目录和节点模块文件夹中运行了npm安装,那么我还缺少什么吗 谢谢你的帮助 const { extractFull } = require(

我正试图在我的Electron应用程序中使用node-7z来解密受密码保护的zip文件,但每当我传递密码时,我都会收到一个eNot错误。我包括7zip-bin,并且.7za文件存在于该位置,当我输入console.log 7zip-bin.path7za时,我将获得一个有效的exe。 如果我提取了一个没有任何密码的zip,那么就没有问题,并且我已经在我的项目根目录和节点模块文件夹中运行了npm安装,那么我还缺少什么吗

谢谢你的帮助

const { extractFull } = require('node-7z')
const zipbin = require('7zip-bin')

let testFile = zipLocation + "/zip.zip";
    const pathTo7zip = zipbin.path7za;
    console.log(pathTo7zip); -->Returns .z7a file path
    const myStream = extractFull(testFile, installLocation, { password: 'password' }, { 
        $bin: pathTo7zip,
        $progress: true
    })
    myStream.on('error', (err) => handleError(err));
}
如果使用p:或password:添加密码,则会出现以下错误:

Error: spawn 7z ENOENT
    at notFoundError (***app\node_modules\cross-spawn\lib\enoent.js:6)
    at verifyENOENT (****app\node_modules\cross-spawn\lib\enoent.js:40)
    at ChildProcess.cp.emit (*****app\node_modules\cross-spawn\lib\enoent.js:27)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:272)

如果没有密码,我不会有任何问题,但我使用node-7z的全部原因是用于zip/.7z加密。

installLocation来自哪里?您发布的代码片段中没有定义它——也许这就是问题所在?嗨,Alex,installLocation是zip输出位置的存储变量。不可能是这样,因为它在没有密码的情况下工作,我已经登录了console.log,它也是有效的。