我正在尝试运行PhantomJs.exe
抛出C#代码。
我的代码:
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.WindowStyle = ProcessWindowStyle.Normal;
startInfo.FileName = "cmd.exe";
startInfo.WorkingDirectory = @"E:\";
startInfo.Arguments = "some string code here";
startInfo.CreateNoWindow = true;
process.StartInfo = startInfo;
process.Start();
当我运行时,它将转到WorkingDirectory E:/
,但是参数不是在cmd提示符上写的。
任何好友都建议我在cmd.exe上运行参数吗?
答案 0 :(得分:1)
为了让cmd.exe接受另一个命令作为参数,您需要在该命令之前加上/ K(如果您希望cmd窗口保持打开状态)或/ C(如果您希望窗口关闭)命令完成后)。所以:
argument ="/C phantomjs highcharts-convert.js -infile options1.json -outfile chart1.png -scale 2.5 -width 300 -constr Chart -callback callback.js";
应该做你需要的。
但是,如果您只想运行PhantomJS程序,我同意Tommi:只需先运行该程序而不首先启动cmd.exe进程(即使用startInfo.FileName = "phantomjs.exe";
代替。