我有一个C#应用程序,在某些时候需要与JAR应用程序通信。没问题,我使用以下代码启动应用程序但不幸的是,应该打印应用程序控制台的窗口仍然是黑色,jar文件在GUI模式下执行。
如果我使用来自RUN或CMD的相同命令调用相同的文件,它可以工作,并且控制台会注册来自JAR的消息任何想法为什么从我的C#应用程序启动时它不会向控制台注册任何消息?
[ProcessStartInfo psi32 = default(ProcessStartInfo);
Process proc1 = new Process();
string path1 = Application.StartupPath;
dynamic process3 = pat1 + "java.exe";
dynamic jar = "-jar ";
dynamic param1 = "/ssh.jar";
dynamic args3 = string.Format("{0}{1} {2}", jar, path1, param1);
psi32 = new ProcessStartInfo(process3, args3);
psi32.RedirectStandardInput = true;
psi32.UseShellExecute = false;
proc1.StartInfo = psi32;
proc1.Start();
string condeva;
using (StreamReader reader = proc1.StandardOutput)
{
message= reader.ReadToEnd();
}
if (message.Contains("failed"))
{
message.Text = "found it...";
}