protected override void OnStart(string[] args)
{
System.Diagnostics.Debugger.Launch();
eventLog.WriteEntry("Server started");
server = new Server();
}
Если изменить метод сервиса OnStart так, как в этом примере, то при запуске службы выскочит диалог с вопросом, какой отладчик запускать. Можно выбрать нужный пункт, после чего в отладчике служба остановится в этом месте.
После запуска отладчик останавливается на строке System.Diagnostics.Debugger.Launch();. Чтобы успешно отлаживаться, надо не забыть "отпустить отладчик" дальше побыстрее, потому что, если постоять тут 30 сек., SCM решит, что служба не запустилась и поток завершится.
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение