【问题标题】:Exit code of a process terminated with Process.Kill() in C#在 C# 中以 Process.Kill() 终止的进程的退出代码
【发布时间】:2010-12-07 18:54:47
【问题描述】:

有两个进程,一个父进程和一个子进程。父进程控制子进程的生命周期,即父进程在需要子进程做一些工作时启动子进程,并且在完成后杀死子进程。要终止子进程,父进程使用 Process.Kill() 和 process.WaitForExit() API。

问题:-

  1. 我观察到子进程的退出代码总是-1。谁在设置此退出代码?

  2. 如何更改此退出代码?

【问题讨论】:

标签: c# .net


【解决方案1】:
  1. Process.Kill
  2. 没有。除非您自己调用 TerminateProcess(),否则 uExitCode 参数。

看看Reflector,这种东西很容易找到。

【讨论】:

    【解决方案2】:

    进程退出代码可能是由 Win32 设置的。你不能改变它。如果您想更改退出代码,请不要使用 Process.Kill 作为您的 IPC 机制。设置一个事件或使用其他 IPC 原语。

    【讨论】:

      猜你喜欢
      • 2011-01-28
      • 2020-09-28
      • 1970-01-01
      • 2022-07-18
      • 2015-04-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-11
      相关资源
      最近更新 更多