2010-12-07 9 views
5

In have 2 process, un processus parent et un processus enfant. Le processus parent contrôle le cycle de vie du processus enfant, c'est-à-dire que le processus parent lance le processus enfant lorsqu'il a besoin que l'enfant effectue un travail et qu'il tue l'enfant lorsqu'il en a terminé avec lui. Pour tuer le processus enfant, le processus parent utilise les API Process.Kill() et process.WaitForExit().Code de sortie d'un processus terminé avec Process.Kill() dans C#

Questions: -

  1. j'observe que le code de sortie du processus enfant est toujours -1. Qui définit ce code de sortie?

  2. Comment puis-je modifier ce code de sortie?

+0

Dup de http://stackoverflow.com/questions/2455232/exit-code-of-a-process-terminated-with-process-kill-in-c-sharp –

Répondre

4
  1. Process.Kill
  2. Non À moins que vous Pinvoke TerminateProcess() vous-même, l'argument uExitCode.

Jetez un oeil à Reflector, ce genre de substance est facile à trouver avec elle.

0

Le code de sortie du processus est probablement défini par Win32. Vous ne pouvez pas le changer. Si vous voulez changer le code de sortie, n'utilisez pas Process.Kill comme mécanisme IPC. Définissez un événement ou utilisez d'autres primitives IPC à la place.

Questions connexes