Reduce complexity around WindowsService projects


It is possible to build a single application so that it:
  • Behaves as a normal Console Application.
  • Behaves as a Windows Service when given a particular command-line argument such as -RunAsService (which is only supplied by the windows service manager)
  • Behaves as a light Console Application which controls the service instance with command-line arguments such as -StartService -StopService -PauseService -ResumeService.
  • Automatically installs itself as a Windows Service as appropriate.
This eliminates the need for a separate installer just for the windows service. This would also remove 4 extra projects from our solution (including all the "HoytSoft" projects which are hard to find information about on the Internet anyway.) We'll then want to rename TestHarness to better reflect the repurposed functionality.
Closed Mar 19, 2015 at 4:01 AM by Karak