从C#web表单应用程序启动NodeJS应用程序

我已经构build了MeteroJS应用程序,我想从C#代码的NodeJS应用程序开始。

这里是Windows窗体应用程序,用作控制面板来启动和停止NodeJS应用程序

在这里输入图像说明

我可以用命令行手动启动NodeJS应用程序:( 这个工作!)

set MONGO_URL=mongodb://evokoAdmin:password@localhost:27017/evoko_db set ROOT_URL=http://someservice:8080 set PORT=8080 node bundle\main.js 

我想从命令行重复上面的所有操作,这次是在C#应用程序中。

这是在开始button点击执行的代码:

 Environment.SetEnvironmentVariable("MONGO_URL", String.Format("mongodb://{0}:{1}@localhost:27017/{2}", usernameTxt.Text, passwordTxt.Text, databaseTxt.Text), EnvironmentVariableTarget.Machine); Environment.SetEnvironmentVariable("ROOT_URL", String.Format("http://someservice:{0}", portTxt.Text), EnvironmentVariableTarget.Machine); Environment.SetEnvironmentVariable("PORT", portTxt.Text, EnvironmentVariableTarget.Machine); Process.Start("CMD.exe", @"/C node bundle\main.js"); 

我不确定这是否可能。 这根本不起作用,不留下任何日志。 你可以请检查我做错了什么,并build议。

使用下面的代码来执行node.js cmd

  Process p = new Process(); p.StartInfo.UseShellExecute = false; p.StartInfo.RedirectStandardOutput = true; p.StartInfo.RedirectStandardError = true; p.StartInfo.RedirectStandardInput = true; p.StartInfo.FileName = @"c:\node\node.exe";**//Path to node installed folder**** string argument = "\\ bundle\main.js"; p.StartInfo.Arguments = @argument; p.Start();