Electron 如何打开执行任意应用文件
Electron 本身不会默认打开执行任意应用文件,需要通过 Node.js 的 'child_process' 模块来实现。以下是一个示例代码:
const { spawn } = require('child_process');
// 打开应用程序
const openApp = (appPath) => {
const app = spawn(appPath, [], {
detached: true, // 让子进程独立运行
stdio: 'ignore', // 不显示子进程的输出
});
app.unref(); // 让子进程脱离主进程
};
// 在点击按钮后打开应用程序
const openButton = document.getElementById('open-button');
openButton.addEventListener('click', () => {
const appPath = '/Applications/TextEdit.app'; // 应用程序的路径
openApp(appPath);
});
在上面的示例中,我们通过 'spawn' 方法启动了一个新的子进程,并将应用程序的路径作为第一个参数传递给它。然后,我们使用 'detached' 和 'stdio' 选项来让子进程独立运行,并且不显示子进程的输出。最后,我们使用 'unref' 方法让子进程脱离主进程。
请注意,这只是一个示例代码,实际情况可能会更加复杂。在实际应用中,您需要考虑更多的安全性和兼容性问题。
原文地址: https://www.cveoy.top/t/topic/kWks 著作权归作者所有。请勿转载和采集!