Как отладить службу windows, которая терпит неудачу в методе Init()


У меня есть служба windows, которая терпит неудачу в методе Init() и выдает некоторое исключение, поэтому единственный способ для меня проверить, что ошибка, глядя на журнал событий. Я хочу отладить службу windows, но проблема в том, что я могу присоединить отладчик только тогда, когда служба rnning, в моем случае это происходит только в методе Init (). Есть идеи ?

3 2

3 ответа:

Вы можете программно присоединить отладчик в качестве первой строки в функции:

Debugger.Launch ();

После добавления оператора using:

using System.Diagnostics;

Обычно я создаю класс с точкой входа static void Main(), которую затем можно временно назначить в свойствах проекта. Оттуда я вызываю те же функции запуска, которые вызываются, когда приложение запускается как служба.

Вероятно, вы можете получить дампы аварии с помощью DebugDiag или windbg.

- это ваш сервис C++ или C#.

Также, возможно, это просто первое случайное исключение, а не настоящая авария. Можете ли вы предоставить дополнительную информацию о сбое?