Как и в большинстве «осведомленных» вещей в Windows, ответ «Реестр».
Взгляните на эту статью базы знаний Майкрософт: http://support.microsoft.com/kb/103000
Поиск «Win32-программа, которая может быть запущена контроллером служб и подчиняется протоколу управления службами». Это интересующий вас вид услуг.
Служба регистрации (содержимое KEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services
\ myservice) содержит информацию о сервисе, включая такие вещи, как расположение исполняемого файла, что делать в случае сбоя (остановка ОС?), какие сервисы должны быть запущены перед этим, каким пользователем он запущен.
Что касается протокола управления службами, main () вашей программы должен вызывать вызов Windows API, настраивая обратные вызовы для запуска, остановки, приостановки для вашей службы. Что вы делаете в этих обратных вызовах, зависит только от вас.