vue electron应用调exe程序

描述

用Python写了一个本地服务编译成exe程序,在electron程序启动后,自动执行exe程序

实现

  1. 使用node的child_process模块可以执行windows执行,通过指令调exe程序
javascript 复制代码
// electron/index.js
var cp = require("child_process");
// 调后台服务 serivePath: exe所在的路径
serverProcss = cp.execFile(serivePath, [], function(err,stdout,stderr){
  if(err){
    console.error(err);
  }
  console.log("stdout:",stdout)
  console.log("stderr:",stderr);
});
  1. 路径问题
  • 开发环境直接写前端目录下的路径,比如我的exe程序放到了service目录下,serivePath就可以设置为"service/xx.exe",
  • 生产环境下,资源会放到resources目录下,所以serivePath设置为"resources/service/xx.exe", 开发环境路径生的service是因为我在package.json中配置了exe路径
javascript 复制代码
// 根据环境使用不同的路径
let servicePath = 'resources/service/xx.exe'
if(process.env.NODE_ENV === 'development') {
  servicePath = 'service/xx.exe'
}

//package.json
"extraResources": {
  "from": "./service/",
  "to": "service"
},

开发路径

安装后的路径

  1. 增加:关闭electron程序结束exe服务
javascript 复制代码
import { app, BrowserWindow, dialog , ipcMain } from 'electron'
app.on('quit', () => {
  // 关闭应用程序,结束后台服务xx.exe
  cp.exec('taskkill /fi "imagename eq xx.exe" /f', function(err, stdout, stderr) {
    if(err) return console.log(err);
  })
})
相关推荐
贵沫末2 分钟前
React——基础
前端·react.js·前端框架
aklry14 分钟前
uniapp三步完成一维码的生成
前端·vue.js
Rubin9321 分钟前
判断元素在可视区域?用于滚动加载,数据埋点等
前端
爱学习的茄子22 分钟前
AI驱动的单词学习应用:从图片识别到语音合成的完整实现
前端·深度学习·react.js
用户38022585982422 分钟前
使用three.js实现3D地球
前端·three.js
程序无bug24 分钟前
Spring 面向切面编程AOP 详细讲解
java·前端
zhanshuo24 分钟前
鸿蒙UI开发全解:JS与Java双引擎实战指南
前端·javascript·harmonyos
JohnYan25 分钟前
模板+数据的文档生成技术方案设计和实现
javascript·后端·架构
撰卢1 小时前
如何提高网站加载速度速度
前端·javascript·css·html
10年前端老司机1 小时前
在React项目中如何封装一个可扩展,复用性强的组件
前端·javascript·react.js