Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在.NETWPF中切换到MahApps.Metro,现在它不会加载JavaJAR进程_C#_.net_Wpf_Jar_Process - Fatal编程技术网

C# 在.NETWPF中切换到MahApps.Metro,现在它不会加载JavaJAR进程

C# 在.NETWPF中切换到MahApps.Metro,现在它不会加载JavaJAR进程,c#,.net,wpf,jar,process,C#,.net,Wpf,Jar,Process,我正在开发一个Twitch机器人,GUI在.NETWPF中,机器人在Java中。我打开bot并将所有bot控制台输出重定向到一个名为console的文本框。一切都按预期完美运行,但当我切换到MahApps.Metro以使GUI看起来更好时,它立即崩溃了。我通过将计时器初始化移到windowonload函数来运行它。现在一切都正常了,只是它不像以前那样打开JavaJAR。我一辈子都搞不懂这件事。代码如下: public void openBot() { try

我正在开发一个Twitch机器人,GUI在.NETWPF中,机器人在Java中。我打开bot并将所有bot控制台输出重定向到一个名为console的文本框。一切都按预期完美运行,但当我切换到MahApps.Metro以使GUI看起来更好时,它立即崩溃了。我通过将计时器初始化移到windowonload函数来运行它。现在一切都正常了,只是它不像以前那样打开JavaJAR。我一辈子都搞不懂这件事。代码如下:

public void openBot()
    {
        try
        {
            Process proc = new Process();
            proc.StartInfo.FileName = "javaw";
            proc.StartInfo.Arguments = "-jar bin\\bot.jar";
            proc.StartInfo.UseShellExecute = false;
            proc.StartInfo.RedirectStandardOutput = true;
            proc.OutputDataReceived += proc_OutputDataReceived;
            proc.Start();
            proc.BeginOutputReadLine();
        } catch (Exception E)
        {
            MessageBox.Show(E.ToString());
        }
    }

    void proc_OutputDataReceived(object sender, DataReceivedEventArgs e)
    {
        this.Dispatcher.Invoke((Action)(() =>
        {
            console.Text = console.Text + "\n" + e.Data;
            console.ScrollToEnd();
        }));
    }

出于任何原因,我不得不使用.exe的发布版本而不是调试版本。固定的