protected override void OnStart(string[] args) { if (ServiceControl.IsServiceTriggerStart(ServiceName)) { ThreadPool.QueueUserWorkItem(delegate { DoWork(); Stop(); }); } else { _timer = new Timer(delegate { DoWork(); }); _timer.Change(0, 5000); } }