如何从Node js

时间:2018-01-20 21:49:20

标签: c# node.js child-process

根据建议更新任务。现在我可以调用控制台应用程序。

创建C#控制台应用程序,如下所示:

namespace ConsoleApplication1
{
class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine(args[0]);
        Console.WriteLine(args[1]);
        Console.WriteLine(args[2]);
        Console.WriteLine("random text");
        // Want to invoke this from Node JS API endpoint. Also want to pass some parameters from Node JS. This method will have code 
        // to generate excel template. 
    }
 }
}

尝试从nodejs调用exe,如下所示

    const exec = require('child_process');
    const child = exec.execFile('ConsoleApplication1.exe', ['arg1', 'arg2', 'arg3'], function (error, stdout, stderr) {
        if (error) {
            throw error;
        }
        console.log(stdout);
    });

在节点执行后,我看到condole.log(stdout)正在打印所有4个值,如下所示: ARG1 ARG2 ARG3 随机文本

感谢您的建议!我有一个后续问题。我观察到,我在C#main方法中有4行console.writeline。节点在stdout中返回这4个字符串。这是我们如何从C#exe获取输出?例如如果我从C#exe中的main方法中删除所有代码行,则节点不会打印任何内容。

0 个答案:

没有答案