title: Monitor when an exe is launched
body: <p>I have some services that an application needs running in order for some of the app's features to work.  I would like to enable the option to only start the external Windows services to initialize after the application is launched. (as opposed to having them start automatically with the machine and take up memory when the application is not needed)</p>
  
  <p>I do not have access to the exe's code to implement this, so ideally I would like to write a C# .Net Windows service that would monitor when an exe is launched.</p>
  
  <p>What I've found so far is the System.IO.FileSystemEventHandler.  This component only handles changed, created, deleted, and renamed event types.  I don't expect that a file system component would be the ideal place to find what I'm looking for, but don't know where else to go.</p>
  
  <p>Maybe I'm not searching with the right keywords, but I have not yet found anything extremely helpful on Google or here on stackoverflow.com.</p>
  
  <p>The solution would be required to run on XP, Vista, and Win 7 when it comes...</p>
  
  <p>Thanks in advance for any pointers.</p>