electron开启自启解决方案
所需插件
安装winreg
npm i winreg -s
复制以下代码保存至项目(startOnBoot.js)
let WinReg = require('winreg');
let startOnBoot = {
enableAutoStart: function (name, file, callback) {
let key = getKey();
key.set(name, WinReg.REG_SZ, file, callback || noop)
},
disableAutoStart: function (name, callback) {
let key = getKey();
key.remove(name, callback || noop)
},
getAutoStartValue: function (name, callback) {
let key = getKey();
key.get(name, function (error, result) {
if (result) {
callback(null, result.value)
} else {
callback(error)
}
})
}
};
let RUN_LOCATION = '\\Software\\Microsoft\\Windows\\CurrentVersion\\Run';
function getKey() {
return new WinReg({
hive: WinReg.HKCU, // CurrentUser,
key: RUN_LOCATION
})
}
function noop() {
}
module.exports = startOnBoot;
引用
在需要的地方引入,如果是在主进程,需要在以下文件中引入
electron项目是
main.js
electron-vue项目在
src/main/index.js
import StartOnBoot from 'StartOnBoot';
内部方法
StartOnBoot有三个方法
enableAutoStart(
name
,file
,callback
) 启用开机自启disableAutoStart(
name
,callback
) 禁用开机自启disableAutoStart(
name
,callback
) 查询开机自启状态
参数解释
name:自启名称
file:可执行文件路径一般为process.execPath
callback:执行成功的回调
原创不易,如果可以就打赏下吧~

