但它不起作用 - 意味着java代码没有被执行。 虽然批处理文件在Windows资源管理器中单击或在命令行中运行时运行正常。
由于批处理文件是单个DOS命令时这很好用,我认为这与Java代码运行需要大约20分钟的事实有关。 我正在使用以下代码
var si = new ProcessStartInfo();
si.CreateNoWindow = true;
si.FileName = batchFileName;
si.UseShellExecute = false;
Process.Start(si);
我做错了什么?
答案 0 :(得分:8)
将UseShellExecute
设置为true,因此它会加载cmd.exe以运行批处理文件。
答案 1 :(得分:0)
检查this-ProcessStartInfo的批处理文件包装:
C:\>ProcessStartJS.bat "cmd.exe" -arguments "/c pause" -style Minimized -priority High -newWindow yes -useshellexecute yes
Started: cmd.exe /c pause
PID:6540