将数据从.net应用程序发送到电子应用程序

时间:2018-05-24 08:12:40

标签: javascript c# node.js electron

我们需要将我的.net WinForm应用程序中的一些数据发送到电子应用程序。由于两个应用程序都是独立的,我们需要在nodejs项目中打开一些TCP端口,并从我的.net应用程序在同一端口上发送数据,但在这里,我不知道如何从我的.net应用程序发送数据。

有人可以提供一个示例或文档来帮助我解决我的问题。

我试图使用node-ipc包来实现它,但没有运气。

  • 节点版本:8.11.1
  • npm version:5.6.0
  • 电子版:1.7.10

1 个答案:

答案 0 :(得分:0)

我的申请中遇到了相同的障碍。

您可以使用Inter进程通信机制,使用socket.io并创建一个套接字作为两个进程之间的通信链接。

您必须在您的电子应用中创建套接字监听器,以下代码段为我工作

var serverSocket = require('net');
var webFrame = require('electron').webFrame;    
function createSocketListener(PORT, HOST) {
        serverSocket.createServer(function (socket) {
            var buffer = "";
            console.log('CONNECTED: ' + socket.remoteAddress + ':' + socket.remotePort);
            socket.on('data', function (data) {
                buffer = data;
            });
            socket.on('close', function (data) {
                // closed connection
                console.log('DATA : ' + buffer);
            });
        }).listen(PORT, HOST);
    }

然后,您可以创建自定义协议,并通过连接到同一套接字将数据从.net应用程序发送到电子应用程序。

您可以查看以下链接以进一步控制和优化。 https://electronjs.org/docs/api/ipc-main