Articles of ipc

电子GUI与C#后端

用例 我有一个使用WinForms的C#开发的现有项目与GUI的自定义控件。 我们对使用HTML / CSS / JS编写GUI的方法感到惊讶,我们正在寻找使用上述语言为我们的桌面应用程序编写GUI的最佳方法。 我们只需要支持Windows设备。 我的忧虑: 使用电子边缘来处理build议并不需要很长时间。 虽然我并不担心一切工作,但我担心: debugging我的C#代码(我仍然希望能够从VS开始我的整个应用程序,并debugging它看起来我习惯了)。 我读过,我需要附加到node.js应用程序,以便后来debugging我的C#代码。 由于整个程序语言是用C#编写的,听起来像是一种痛苦? 就我而言,边缘会让它像一个进程一样运行。 我可以将电子应用程序视为一个自己的线程,当我的C#代码停留在某个地方时,它仍然可以运行吗? 我的select: 我仍然是积极的我想用HTML / CSS / JS编写我的桌面GUI。 我认为,而不是使用电子边缘是写一个自己的电子应用程序,它使用命名pipe道与我的C#后端进行通信。 我不知道是否有更大的路障,为什么我不想这样做,并使用电子边缘呢? 我的问题: 我想得到上面提到的两个问题的反馈,我也想获得关于将GUI创build为自己的电subprocess的选项的input,这样当有人运行我的应用程序时,我有两个进程(GUI +后端)。

从NodeJS发送字节数组到C库

我有一个与C程序在同一台服务器上运行的NodeJS服务器。 我需要从我的NodeJS服务器发送一个字节数组到我的C程序。 我在C中有一个set_title函数 set_title(uint16_t *title) 任何想法我怎么能做到这一点?

Python 进程将消息发送给Node 进程

Python进程派生的NodeJS – 替代process.send()的Python? 我遵循上面的解决scheme,但似乎没有工作(没有消息正在发送的孩子python代码。这是我的代码: const spawn = require('child_process').spawn; var child = spawn('python3', ['child.py'], { stdio:[null, null, null, 'pipe'] }); child.on('message', function(message) { console.log('Received message…'); console.log(message); }); 和 # !/usr/bin/python3 import os os.write(3, str.encode("HELLO")) 我可以看到有什么可能出错。 请帮忙。

未捕获的exception:试图在已经closures或释放的渲染器窗口中调用一个函数

我是新来的桌面应用程序开发,并使用电子node.js和JavaScript来构build我的应用程序。 这里是我想要实现的一个简短的描述: FirstWindow.html 具有与每个与事件监听器双击相关联的列表项目的产品列表。 双击任何元素。 SecondWindow.html 应该被创build,它具有从数据库(postgesql)中提取的点击产品的信息。 但是在打开应用程序时出现以下错误: 未捕获exception:试图在已closures或释放的渲染器窗口中调用函数 这里是我的代码片段,我试图实现ipcMain和ipcRenderer模块: main.js const electron = require('electron'); ipcMain.on('item_catch_in_main', function(e, productname){ SecondWindow.webContents.send('item_action_to_be_done', productname); }); FirstWindow.html <script> const { ipcRenderer } = require('electron'); ipcRenderer.send('item_catch_in_main', productname); </script> SecondWindow.html <script> const { ipcRenderer } = require('electron'); ipcRenderer.on('item_action_to_be_done', (event, item) => { console.log(item); }); </script> 请让我知道是否有人在Elecrton解决了类似的问题。 提前致谢!

生产者/消费者+工作者与Node.js / python拱

我们有2个组件1生产者/消费者,2过程 生产者/消费者是I / O激励,并且只需要networking请求,并根据input参数input到mongodb。 进程是从mongodb和group(make pair)处理数据的独立进程(在python中)。 这种配对可以花费很less的时间,一旦配对完成,我们要通知节点,为了给定的连接,“处理完成”,所以节点可以发送数据回客户端。 我不知道“如何通知节点的连接,过程完成,这是输出。”

监听主进程上的HTTP通信,处理subprocess上的连接?

我正在寻找一种方法来让套接字监听主进程上的HTTP请求,然后使用process.send()将所有传入连接和请求数据传递给subprocess,并在subprocess中处理HTTP请求。 但是,我无法find一种方法来将传递的连接和请求数据附加到subprocess中的HTTP服务器,而无需通过.listen()套接字初始化服务器。 那么,是否有可能使用HTTP服务器来处理从另一个进程传入的连接呢? 任何非公开的API解决scheme也将做(尽pipeJavaScript的希望尽pipe)。 我想我可以初始化服务器来侦听一些虚拟套接字,然后popup传入的连接,但这似乎并不理想。 传入监听套接字或使用群集或反向代理也不是最佳的在我的情况。

Bidrectional节点/ python通信

我正试图在节点和派生的Python进程之间实现简单的双向通信。 python: import sys for l in sys.stdin: print "got: %s" % l 节点: var spawn = require('child_process').spawn; var child = spawn('python', ['-u', 'ipc.py']); child.stdout.on('data', function(data){console.log("stdout: " + data)}); var i = 0; setInterval(function(){ console.log(i); child.stdin.write("i = " + i++ + "\n"); }, 1000); 在Python上使用-u强制unbuffered I / O,所以我期望看到输出(我也尝试了sys.stdout.flush() ),但没有。 我知道我可以使用child.stdout.end()但是这阻止了我以后写数据。

不断从subprocessstdout读取json

我想阅读和jjj消息发送到一个Javasubprocessnodejs和。 孩子的过程会活一段时间。 通过stdio发送和接收的消息表示来自两个进程的事件。 因此,消息必须在完成后立即处理。 输出将在表格中 {"type":"eventType","data":…} {"type":"anotherEventType","data":…} … {"type":"anotherEventType","data":…} 写信息是没有问题的,但阅读是。 特别是因为我不能依赖\n分裂的消息,也不能说一个块只包含一个消息。 不幸的是,我能find的每个例子都会cachingstdout的输出,直到进程终止并且只parsing它。 而我可以find的所有IPC节点模块都使用我想避免的套接字。 是否有现有的库提供这样的function,或者我必须自己的angular色?

Electron + angularjs IPC机制

我正在尝试在Electron中使用AngularJs。 我感到困惑的是, 这里的电子文档build议使用类似于: // In renderer process (web page). const ipcRenderer = require('electron').ipcRenderer; console.log(ipcRenderer.sendSync('synchronous-message', 'ping')); // prints "pong" ipcRenderer.on('asynchronous-reply', function(event, arg) { console.log(arg); // prints "pong" }); ipcRenderer.send('asynchronous-message', 'ping'); 但是由于Angular在浏览器(webkit)中运行,我不能使用require来获取ipcRenderer。 如何克服这个问题。

在node.js中获取所有嵌套的subprocess的标准输出

我创build了一个节点脚本来启动subprocess,并且我已经成功地将其stdoutredirect到控制台。 但是,如果subprocess创build一个嵌套的subprocess,那么我无法得到它的标准输出或标准input。 我有一个模糊的想法,我必须创buildstream,并将其pipe道父进程,但我不知道现在。 有人可以请一个方法来实现它。 下面是我现在启动subprocess的代码 spawn = require('child_process').spawn; ls = spawn "ruby" , [ @editor.getPath() ] ls.stdout.on 'data', (data) -> console.log data.toString() ls.stderr.on 'data', (data) -> console.log data.toString()