Я использую app.setLoginItemSettings(settings)
для автоматического запуска приложения при запуске системы. Пример, приведенный в Electron API do c page , предназначен для Windows. При добавлении следующего в Electron main.js
приложение автоматически запускается очень хорошо , но также показывает дополнительное окно, в котором говорится следующее, чего я не хочу:
To run a local app, execute the following on the command line:
Users/abc/Documents/Repositories/app/node_modules/electron/dist/Electron.app/Contents/MacOS/Electron path-to-app
![enter image description here](https://i.stack.imgur.com/BM4L9.png)
main.js
const appFolder = path.dirname(process.execPath)
const updateExe = path.resolve(appFolder, '..', 'Update.exe')
const exeName = path.basename(process.execPath)
import { app } from "electron";
app.on("ready", async() => {
app.setLoginItemSettings({
openAtLogin: true,
path: updateExe,
args: [
'--processStart', `"${exeName}"`,
'--process-start-args', `"--hidden"`
]
});
});
Я также попытался со следующим path
, но это также не сработало:
const appFolder = path.dirname(process.execPath)
const updateExe = path.resolve(appFolder, '..', 'Update.exe')
const exeName = path.basename(process.execPath)
import { app } from "electron";
app.on("ready", async() => {
app.setLoginItemSettings({
openAtLogin: true,
path: "/Applications/MyApp.app",
args: [
'--processStart', `"${exeName}"`,
'--process-start-args', `"--hidden"`
]
});
});
Кроме того, также пробовал с Electron Root Путь пакета , но все же на удачу:
const appFolder = path.dirname(process.execPath)
const updateExe = path.resolve(appFolder, '..', 'Update.exe')
const exeName = path.basename(process.execPath)
import { app } from "electron";
import { rootPath } from "electron-root-path";
app.on("ready", async() => {
app.setLoginItemSettings({
openAtLogin: true,
path: rootPath,
args: [
'--processStart', `"${exeName}"`,
'--process-start-args', `"--hidden"`
]
});
});
И последнее, но не менее важное ?, также пытался со следующим, но все еще не повезло :
const appFolder = path.dirname(process.execPath)
const updateExe = path.resolve(appFolder, '..', 'Update.exe')
const exeName = path.basename(process.execPath)
import { app } from "electron";
import { rootPath } from "electron-root-path";
app.on("ready", async() => {
if (process.platform === "darwin") {
app.setLoginItemSettings({
openAtLogin: true,
openAsHidden: true,
path: rootPath
});
} else {
app.setLoginItemSettings({
openAtLogin: true,
openAsHidden: true,
path: updateExe,
args: [
"--processStart",
`"${exeName}"`,
"--process-start-args",
`"--hidden"`
]
});
}
});
Мне не хватает всех идей, которые у меня есть, чтобы сделать эту работу. Буду очень признателен за любую помощь:)