title: How to make a Windows service with parameters?
body: <p>I have written a Windows service, of which I want to have 1 instance running per customer.  This is because the customers each have their own DB with identical schemas; the only difference between the Windows services is that they will each have a different parameter corresponding to the customer DB that they're designated to serve.  (And I can't have one service with multiple worker threads, because the DB connection uses a static variable, which I can't fiddle with across threads.)</p>
  
  <p>I found <a href="http://www.switchonthecode.com/tutorials/creating-a-simple-windows-service-in-csharp" rel="noreferrer">this neat little tutorial</a> about how to make a Windows Service, but it only shows me how to set it up for a single service.  I want to set up <em>n</em> instances of the service, each one with a display name that includes the customer name, running with the command line parameter that denotes the customer ID.</p>
  
  <p>The tutorial linked above has a class called <code>MyWindowsServiceInstaller</code>, which installs the windows service on the local system, and I'm guessing this would be a logical place to set up a <code>foreach</code> loop through all my customers, setting up one service for each.  But I can't see anywhere on the interfaces provided that would allow me to set up a command line parameter for the new service.</p>
  
  <p>How do you do it?</p>