Trigger-Started Services are new with Windows Server 2008 R2 and Windows 7.   Before, services were typically started at system boot time and ran until system shutdown.   Now, services can specify start and stop conditions (triggers).

Common usage scenarios include:

  • Device class arrival and removal
    • Example: “Bthserv” starting on bluetooth device class arrival
  • IP address arrival and removel
    • Example: “Lmhosts” start on first and stop on last IP address availability
  • Firewall port event
    • Example: “Browser” open of NS and DGM ports
  • Domain join and unjoin
    • Example: “W32Time” start on join, stop on unjoin
  • Custom ETW event
    • Example:  “AppID” start when SRP enabled

Trigger meta-data is stored in the service registry key.   You can use the “sc qtriggerinfo” command to view service triggers.

Watch the new MSDN Channel9 episode to learn more.