title: Communicating with a Windows Service
body: <p>I'm looking for the best way to use a Windows Service to manage a group of objects for use by several different client programs.  The service must</p>
  
  <ol>
  <li>create the list of objects corresponding to physical or virtual devices,</li>
  <li>maintain information about what process is currently using a given device and what devices are available to be used,</li>
  <li>manage requests to use a given device by a process,</li>
  <li>return devices to an unused state.</li>
  </ol>
  
  <p>When I look at the Windows Service examples, though, there is very limited communications to Services.  OnCustomCommand doesn't return any information to the caller.   </p>
  
  <p>So is there a recommended way to establish information exchange between a service and various clients?</p>
  
  <p>For background - I am replacing a Win32/COM app with a .Net app.  The current device manager is a COM server with the clients being COM clients.</p>