2015-06-02 7 views
0

У меня возникли проблемы с возвратом функции восстановления при работе с моим Службой Windows. Я решил перезапустить приложение при первом сбое. Затем, чтобы проверить в я использую эту строку кодаВосстановление при сбое для приложения-службы Windows

System.Environment.Exit(-1) 

Это вызывает приложение для завершения в порядке, но он не перезагружается.

+1

Это чистый выход, он не считается «провалом». Попробуйте вместо этого создать исключение. –

+0

Это похоже на работу. Благодарю. Я не могу отметить это как ответ, потому что это комментарий. –

ответ

1

Разумно предположить, что процесс обслуживания, выходящий без установки статуса обслуживания на останов, станет сбоем. Однако это не так. (Возможно, для обратной совместимости, может быть слишком много сторонних служб, которые такие изменения нарушат.)

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

Смежные вопросы