2017-04-05 135 views
0

我有一个启动Electron应用程序(node.js)的C#应用​​程序。我试图将一个命令行参数传递给Node.JS应用程序,但是当我从index.js中访问process.argv时,参数不存在。有什么具体的我应该做的从我的节点应用程序中检索这个参数?启动Electron/Node.JS应用程序并从C#传递命令行参数

Process process = new Process(); 
process.StartInfo.FileName = pathToEXE; 
process.StartInfo.Arguments = argument; 
process.EnableRaisingEvents = true; 
process.Start(); 
+0

你能显示你的pathToEXE变量内容吗? –

+0

它是节点应用程序可执行文件的相对路径,它启动正常 - 我似乎无法找到参数所在的位置 –

回答

0

基本上process.argv阵列返回其安装位置和文件开口路径2倍的值。所以首先应先分配在main.js如以下全局对象的那些值,

global.sharedObject = {installedLocation:process.argv [0],openFilePath: process.argv [1]}

和访问此在index.js如下,

变种远程=要求( '电子')远程。

var location = remote.getGlobal('sharedObject')。installedLocation;

var filePath = remote.getGlobal('sharedObject')。openFilePath;

相关问题