首页 > 解决方案 > 如何使用电子中的按钮打开 exe 文件

问题描述

我试图让一个按钮在计算机中打开一个 exe 文件,但它没有打开,它给了我这个错误

未捕获的 ReferenceError:在 HTMLButtonElement.onclick 的 runExe (main.js:61) 中未定义要求

这是我的按钮的代码

<button onclick="runExe()" id="button">click</button>

我从互联网上得到了这段代码,当我删除函数 runExe() 时,exe 文件在我启动应用程序时打开,我希望它只在单击按钮时打开。

这是打开exe文件的代码

function runExe(){
var child = require('child_process').execFile;
var executablePath = "winRAR.exe";

child(executablePath, function(err, data) {
  if(err){
 console.error(err);
  return;
}


console.log(data.toString());
});}

标签: javascripthtmlonclickelectronexe

解决方案


错误消息说您不能使用require.

您正在尝试在渲染器进程中运行该代码。如果 main 和 renderer 之间的区别是新的,请参阅https://www.electronjs.org/docs/tutorial/application-architecture#main-and-renderer-processes

做你想做的事情的一种方法是让渲染的进程将打开请求发送到主进程,其中 require 将起作用,并且打开子进程应该起作用。

顺便说一句,我不知道shell.openItem()https://www.electronjs.org/docs/api/shell)是否可以用来启动任何 exe?如果是这样,那可能是更好的方法。


推荐阅读