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);
  })
})
相关推荐
郑洁文5 分钟前
可视化Web渗透分析工具的设计与实现
前端
罗超驿23 分钟前
18.Web API 实战:元素与表单属性的获取和修改
开发语言·前端·javascript
边界条件╝23 分钟前
微前端进阶(四)
前端·状态模式
无风听海28 分钟前
JSON Web Token(JWT)完全指南
java·前端·json
山河已无恙1 小时前
BPF-eBPF 开发路线二:libbpf、CO-RE 与 libbpf-bootstrap认知
javascript·bootstrap·php
IT_陈寒1 小时前
Python闭包里藏的这个坑,差点让我加班到凌晨
前端·人工智能·后端
IT_陈寒1 小时前
Java注解空指针?这个坑我踩得莫名其妙
前端·人工智能·后端
H0r1zon.1 小时前
PinCopy:双击 Ctrl,把剪贴板「钉」在屏幕上
前端
kyriewen2 小时前
大厂面试新规:不会用AI编程,直接挂
前端·面试·ai编程
努力找实习的前端小白2 小时前
useImperativeHandle,useRef,forwardRef的协作关系
前端·面试