title: Best practise: App1.exe start process App2.exe, then App2.exe need to close App1.exe
body: <p>Good afternoon.</p>
  
  <p>I need to admit this is a weird work to do, but I need it... :-)</p>
  
  <p>Today there's a C# console application (I will name it App1.exe) called by my colleagues, working in COBOL. When the App1.exe finish its work, closes itself, then COBOL programs can go ahead and read files generated from App1.  </p>
  
  <p>This App1 is opened and closed hundred times a day, and it's not so quick...
  Now I need to get business logic in an systray app, always ready, to answer quickly to requests, but I cannot force my colleagues to change their programs: they will ever call App1.exe, waiting while it closes. So I createad a single istance App2.exe (I cannot use system services) that do the work; so now I thinked about this solution: App1.exe simply calls App2.exe (passing command line args), then it remains in stand-by (using Process.Start(App2.exe) and Process.WaitForExit()). When App2.exe finish to work, kills App1.exe, so COBOL programs can detect work is done and continue reading files generated from App2.exe.  </p>
  
  <p>In this solution (quick and dirty way, I'm just trying...) there's a problem: App2.exe was called by App1.exe, so it appears that a called exe cannot kill his parent, isn't it?</p>
  
  <p>There's a better/reccommended way to do this kind of work?
  I can use only C# 2.0.</p>
  
  <p>Thank you guys, any idea is welcome.<br>
  Nando</p>