Поделиться через


Практическое руководство. Отладка метода OnStart

Этот раздел применим к:

Выпуск

Visual Basic

C#

C++

Web Developer

Express

Тема применяется Тема применяется

Только управляемый код

Тема применяется

Pro, Premium и Ultimate

Тема применяется Тема применяется

Только управляемый код

Тема применяется

Отладку конструкторов служб Windows можно выполнять путем пошагового выполнения экземпляра службы. Саму службу Windows можно отлаживать, запустив ее и подключив отладчик к процессу службы. Тем не менее, для отладки метода OnStart службы Windows необходимо добавить несколько строк кода для эмуляции работы этой службы. Дополнительные сведения см. в разделе ServiceBase.OnStart.

Отладка метода OnStart

  • Создайте код, эмулирующий работу службы (например, консольное приложение), чтобы найти место возникновения ошибки.

    Допустим, что имеется служба Windows, написанная на Visual C#, код которой выглядит следующим образом:

    public class ManagedWindowsService : System.ServiceProcess.ServiceBase 
    {
       //
       // designer and user generated methods and properties
       //
       public static int main(String[] args)
       {      
          ServiceBase.Run( new ManagedWindowsService() );
       }
    }
    

    Для отладки метода OnStart добавьте следующие строки:

    public static int main(String[] args)
    {      
       (new ManagedWindowsService()).OnStart(); // allows easy debugging of OnStart()
       ServiceBase.Run( new ManagedWindowsService() );
    }
    

    В этом режиме служба не запустится, но можно будет отладить метод OnStart и убедиться, что он работает правильно.

Дополнительные сведения содержатся в разделе Отладка служб Windows.

См. также

Основные понятия

Безопасность отладчика

Другие ресурсы

Отладка управляемого кода