在开发模式下,执行exe工作正常。
我启动exe的代码是
function LaunchExe() {
var child = require('child_process').execFile;
var executablePath = 'DemoExe/Sample.exe';
var parameters = ['Hai', 'Test', 'Dat'];
child(executablePath, parameters, function (err, data) {
console.log(err)
console.log(data.toString());
});
}
但在打包Electron应用程序后,我无法启动exe。
我用来构建exe的命令是
electron-packager . --asar
错误代码
Error: spawn DemoExe/Sample.exe ENOENT
at Process.ChildProcess._handle.onexit (internal/child_process.js:232)
at onErrorNT (internal/child_process.js:407)
at process._tickCallback (internal/process/next_tick.js:63)
问候。
你的项目有角度吗?
也许这可以提供帮助,但我也遇到过电子封装器问题。
所以我建议你使用电子生成器:https://www.electron.build
你需要在root上添加一个名为electron-builder.json的文件,它应该包含以下内容(你需要更新productname和icons location):
{
"productName": "projectname",
"appId": "org.project.projectname",
"artifactName": "${productName}-setup-${version}.${ext}",
"directories": {
"output": "builds/"
},
"files": [
"dist/",
"node_modules/",
"package.json",
"**/*",
"!**/*.ts",
"!*.code-workspace",
"!package-lock.json",
"!src/",
"!e2e/",
"!hooks/",
"!angular.json",
"!_config.yml",
"!karma.conf.js",
"!tsconfig.json",
"!tslint.json"
],
"nsis": {
"oneClick": false,
"allowToChangeInstallationDirectory": true
},
"mac": {
"icon": "src/favicon.ico"
},
"win": {
"icon": "src/favicon.ico"
},
"linux": {
"icon": "src/favicon.png"
}
}
然后,您需要将这些脚本添加到package.json中
"scripts": {
"build:prod": "npm run build -- -c production",
"package:windows": "npm run build:prod && electron-builder build --windows"
}
可以编译可执行文件
npm run package:windows
另外,不要忘记将电子构建器添加到您的dev依赖项中:
纱线添加电子助剂--dev
可执行文件位于/ builds中
必须使用以下步骤,
1.使用命令打包Electron app
电子包装机。
2.路径到exe
path.join(__ dirname,“DemoExe”,“Sample.exe”)