Ошибка при остановке службы Windows

Я работаю над службой Windows. Работает нормально. Когда я пытаюсь остановить службу из services.msc , возникает следующая ошибка: Сервис не вернул ошибку. Это может быть внутренняя ошибка Windows или внутренняя ошибка службы. Если проблема не исчезнет, ​​обратитесь к системному администратору.

Если я попытаюсь остановить ее снова, это займет много времени, а затем выдаст ошибку, как показано ниже:

Windows не может остановить службу xxx на локальном компьютере. Ошибка 1061: служба не может принимать управляющие сообщения в данный момент.

На этом этапе служба остановлена. Но если я попытаюсь переустановить службу, появится другая ошибка:

Windows не может остановить службу xxx на локальном компьютере.
Ошибка 1001. Указанная служба помечена для удаления.

После закрытия services.msc он позволяет мне переустановить службу, и снова все начинает работать нормально.

В OnStop () , я выполняю несколько длительных операций, и для их завершения требуется время.

Есть идеи, как я могу сделать все, чтобы все прошло гладко?

- Изменить -

Это мой OnStop Метод выглядит так:

protected override void OnStop()
{
    base.OnStop();
    //Some lengthy operation      
}
10
задан Jeff B 12 November 2014 в 23:04
поделиться