Электронная связь с экземпляром

#electron #protocols #instance #message #communication

#electron #протоколы #экземпляр #Сообщение #Информационные материалы

Вопрос:

Я пытаюсь найти способ связи между экземплярами Electron. Приложение, над которым я работаю, позволяет использовать несколько экземпляров, каждый из которых связан с файлом. Я хочу иметь возможность передавать сообщение из экземпляра, созданного из протокола, во все экземпляры.

Если я получу блокировку при использовании первого экземпляра app.requestSingleInstanceLock() , я могу использовать событие second-instance для отправки сообщения, но только этому первому экземпляру.

Я также попытался перечислить все окна с BrowserWindow.getAllWindows() помощью, но похоже, что они относятся к экземплярам, созданным в экземплярах electron.

Использование Electron: 9.3.1.

Ответ №1:

Я не знаю ни одного «хорошего» способа. Я думаю, вам просто нужно, чтобы одно приложение записывало в файл через fs модуль, когда оно хочет взаимодействовать, и экземпляры приложений, которые ожидают получения сообщений, должны просматривать этот файл на предмет изменений, подобных этому:

 fs.watchFile("myLogFile.log", (curr, prev) => {
   // read file for the message
});
  

Комментарии:

1. Это решение сработало для меня. Я использовал fs.watch app.getPath('appData') , чтобы передать сообщение через экземпляры.