vue调用本地exe程序

Vue调用本地EXE程序:前端-后端协作实现
本文介绍了如何在Vue项目中调用本地EXE程序,通过Node.js和Express搭建服务,利用child_process模块执行EXE。前端通过axios发起请求,实现与后端的交互,成功启动指定的本地程序。
该文章已生成可运行项目,

vue调用本地exe程序, 原生js同理


此方法需要后端的配合,简单来说了下实现思路,我是使用node+express搭建了一个服务,通过引用node中的 child_process 模块来实现的这个需求

1.搭建服务

在项目根目录下创建 bin/index.js

const express = require('express'); //npm下载并引入express模块 npm -express -D
const router = require('../router/index.js');
var ejs = require('ejs')
var path = require('path');


const app = express();
app.use('/plugIn',express.static(path.join(__dirname,'../plugIn'))) 

app.set(</
本文章已经生成可运行项目
Vue2中调用exe程序有以下几种实现方法: ### 借助后端服务 此方法需要后端配合,可使用node + express搭建服务,通过引用node中的`child_process`模块来实现。具体步骤如下: 1. 搭建服务:使用node和express搭建一个服务。 2. 路由文件:设置合适的路由来处理前端请求。 3. 前端发起请求:在Vue2项目中向搭建好的后端服务发起请求。示例代码如下: ```javascript // 前端Vue2代码示例 this.$http.get('your_backend_api_url').then(response => { // 处理响应 }); ``` 后端代码示例: ```javascript const express = require('express'); const app = express(); const { exec } = require('child_process'); app.get('/run-exe', (req, res) => { exec('path/to/your/exe.exe', (error, stdout, stderr) => { if (error) { console.error(`Error executing the executable: ${error}`); res.status(500).send('Error'); return; } console.log(`Executable output: ${stdout}`); res.send('Success'); }); }); const port = 3000; app.listen(port, () => { console.log(`Server running on port ${port}`); }); ``` ### 使用注册表方式 通过修改注册表来实现调用本地的bat或者exe文件。最后一行是本地的bat或者exe文件路径,保存后,双击执行该注册表: ```plaintext Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\regAA] @="URL:F1 Protocol Handler" "URL Protocol"="" [HKEY_CLASSES_ROOT\testbat\shell] [HKEY_CLASSES_ROOT\testbat\shell\open] [HKEY_CLASSES_ROOT\testbat\shell\open\command] @="C:\\eladmin\\test.bat" ``` ### 在Electron_Vue项目打包后启动其他exe程序 使用`exec()`方法通过路径启动对应的exe。示例代码如下: ```javascript import { exec } from 'child_process'; import path from 'path'; const pathToExecutable = path.join(process.cwd(), '/resources/labelme.exe'); exec(pathToExecutable, (error, stdout, stderr) => { if (error) { console.error(`Error executing the executable: ${error}`); return; } console.log(`Executable output: ${stdout}`); }); ```
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雾里桃花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值