从运行进程中捕获异常

时间:2013-05-27 06:11:20

标签: c# process

我正在运行一个EXE文件的进程,它将始终在后台运行并侦听键盘事件,并使用以下代码启动EXE文件:

            ProcessStartInfo startInfo = new ProcessStartInfo();
            startInfo.FileName = exeFile;
            startInfo.Arguments = args;
            startInfo.RedirectStandardOutput = true;
            startInfo.RedirectStandardError = true;
            startInfo.UseShellExecute = false;
            startInfo.CreateNoWindow = true;

            Process processTmp = new Process();
            processTmp.StartInfo = startInfo;
            processTmp.EnableRaisingEvents = true;

            try
            {
                _keyboardListener = processTmp;
                _keyboardListener.Start();
            }
            catch (Exception)
            {
            }

然后它会向我的应用程序发送一些输入,但有时它会抛出一个异常,并且该进程将停止正常工作,但我怎么看该进程是否抛出异常?当我测量退出代码时会抛出异常,告诉我需要停止进程以获取退出代码。

1 个答案:

答案 0 :(得分:0)

好了,因为你想要捕获你的异常,你可以在你的catch块中使用

       try
        {
            _keyboardListener = processTmp;
            _keyboardListener.Start();
        }
        catch (Exception ex)
        {

        MessageBox.Show(ex.message);

           // OR
          //You can write to any text file using StreamWriter

        }

希望这有帮助