电子实例通信

问题描述

我正在尝试找出在Electron实例之间进行通信的方法。我正在使用的应用程序允许多个实例,每个实例与一个文件关联。我希望能够从协议产生的实例向所有实例广播一条消息。

如果我使用app.requestSingleInstanceLock()获得了第一个实例的锁,则可以使用事件second-instance发送消息,但只能发送到该第一个实例。

我也尝试用browserWindow.getAllWindows()枚举所有窗口,但看起来这些窗口是指在电子实例中创建的实例。

使用电子:9.3.1。

解决方法

我不知道任何“好”的方式。我认为您只需要在fs模块中通过一个应用程序与文件通信时就可以通过该文件进行通信,并且期望接收​​消息的应用程序实例必须监视该文件,以便进行如下更改:

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