1.通过下面的命令可以调用exe
const child = require('child_process')
child.exec(`${path路径}`, (err, stdout, stderr) => {
console.log(err, stdout, stderr)
2.如果想给调用的路径传参,就在路径后面加传参的内容
const child = require('child_process')
child.exec(`${path} 12 34`, (err, stdout, stderr) => {
console.log(err, stdout, stderr)
3. 在调用的exe文件中
const { remote } = require('electron')
let arg = remote.process.argv // 这个接收参数,是一个数组
4. ipconfig/all命令能查看当前电脑有多少个网卡,还有网卡的ip信息,DNS等信息,我下面的操作是查看当前系统中是否安装了某个网卡,如果不存在就安装。
let binaryEncoding = "binary";
let iconv = require("iconv-lite");
let encoding = "cp936";
const child = require('child_process')
child.exec( `ipconfig/ALL`, { encoding: binaryEncoding }, (err, stdout, stderr) => {
let des = iconv.decode(Buffer.from(stdout, binaryEncoding), encoding);
//这个是解决返回的信息乱码的问题
console.log(des.includes("TAP-Windows Adapter V9"));
5. 关机命令
const child = require('child_process')
child.exec('shutdown -s -t 0 -f')
6.修改ip(乱码的方法可以参考方法四)
const child = require('child_process')
child .exec(`netsh interface ip set address name="以太网" static ${address} ${mask} ${gatework}`, { encoding: binaryEncoding, windowsHide: true }, (error, stdout, stderr) => {
if (!error) {
console.log('设置地址成功!')
} else {
console.log('设置地址失败!')
// console.log(iconv.decode(new Buffer(stdout, binaryEncoding), encoding))
7.修改系统时间
const child = require('child_process')
exec(`date ${year}/${mon}/${day} & time ${hour}:${mi}:${ss}`, (err, stdout, stderr) => {
通过下面的命令可以调用exe1. constchild=require('child_process')child.exec(`${path路径}`,(err,stdout,stderr)=>{ console.log(err,stdout,stderr)})2.如果想给调用的路径传参,就在路径后面加传参的内容child.exec(`${path}1234`,(err,stdout,stderr)=>{co...
npx create-windowsless-app my-app
注意:当用户文件夹路径包含空格时,在Windows上运行npx存在一个未解决的问题。 有关更多信息和解决方法:
或与npm 您可以全局安装create-windowsless-app:
npm install -g create-windowsless-app
然后您可以运行:
create-windowless-app my-app
或在交互模式下:
npx create-windowless-app --interactive
create-windowless-app创建以下文件:
my-app
var process = require('child_process');
process.
exe
cFile('D:\\Postman\\Postman.
exe
', (error) => {
console.log(error);
2、详细介绍:https://
nodejs
.org/api/child_process.html
const child_process=require('child_process');
const screen_window = child_process.
exe
cFile(__dirname + './screen/PrintScr.
exe
')
screen_window.on('exit', function (c
Node-RED简介与Windows上安装、启动和运行示例:
Node-RED简介与Windows上安装、启动和运行示例_霸道流氓气质的博客-CSDN博客_nodered windows
Node-RED怎样导出导入流程为json文件:
Node-RED怎样导出导入流程为json文件_霸道流氓气质的博客-CSDN博客_怎么导出json文件
在上面的基础上怎样实现在Node-RED中
调用
exe
程序。
在之前的文章中,实现了Electron-vue在不同系统打包成安装程序。但这只是前端build/package之后的文件打包,虽然服务端的编译之后的
exe
文件也可以放到一起打包,并且可以去启动服务端程序。然而不能与服务端通信的话,那么这个程序存在的意义就不大。所以在这片文章中会讲一下怎么在安装之后,启动应用程序
调用
服务端程序,同时获取服务端的输出值/返回值。
由于不是传统意义上的前后端通信(常见的前后端通信,只需要使用http/https进行通信即可,request发送请求,response返回请
在前面做了一些Eelectron-vue的基础调研,包含项目构建,打包应用以及构建安装程序等,其中也碰到了一些问题,基本上能解决的都解决了。
做了前面的研究准备,接下来就是项目的实际开发。目前是在主进程中可以启动子进程(这里指另外一个
exe
程序),并且能获取到子进程返回的数据,所以接下来要调研的就是怎么向子进程传递参数以及怎么获取子进程中返回的数据?
2.父子进程的参数传递
前面使用的是spawn的方式去实现的父子进程之间的通信,这里也还是使用spawn实现父子进程之间的参数传递。
其中子进程传给
function
exe
cutor() {
var
exe
c = require('child_process').
exe
c, child;
//
exe
c_path 写入需要执行的命令
var
exe
c_path = "a.
exe
";
// 执行函数
child =
exe
c(
exe
c_path, function (error, stdout, stderr) {
if(error) return con
1:要用到child_process模块
var child_process=require("child_process")
child_process.
exe
cFile("01.bat",null,{cwd:'E:/xampp/htdocs/node-bat'},function(error,stdout,stderr){
if(error !==null){
child.stdin 获取标准输入child.stdout 获取标准输出child.stderr 获取标准错误输出
获取子进程的PID:child.pid提供生成子进程的重要方法:child_process.spawn(cmd,
args=
安装:npm install node-cmd -s
node-cmd模块中主要有run和get两类命令,其中run是执行cmd命令,get命令除了异步执行cmd命令外,在执行完毕后还会执行回调函数,返回命令行窗口的输出。
var cmd=require('node-cmd');
cmd.run('touch example.created.file');
cmd.get(
vue使用html2canvas报错:The image argument is a canvas element with a width or height of 0.
向KaiSarH学习:
domtoimage截屏报错Uncaught(in promise)
mingmxinx:
domtoimage截屏报错Uncaught(in promise)
•Time•:
解决electron-vue中element-ui表格无法显示问题
Ten.Xxz: