Немного по логике.
Цитата VVolf:
try
{
service.Stop(); // Останавливаем службу
service.WaitForStatus(ServiceControllerStatus.Stopped, new TimeSpan(0, 1, 0)); // Ждем в течении 1 минуты переход службы в остановленное состояние
} »
|
Цитата VVolf:
finally
{
// Пробуем запустить службу
try
{
service.Start(); // Запускаем службу
service.WaitForStatus(ServiceControllerStatus.Running, new TimeSpan(0, 1, 0)); // Ждем в течении 1 минуты переход службы в запущенное состояние
} »
|
В первом try идет попытка остановить службу. Допустим, WaitForStatus вывалилась с ошибкой. Мы пишем ошибку в лог (catch) и затем в finally пытаемся стартануть службу, которая не ответила своевременно. Мне кажется, надо в finally убивать в жесткую службу, предварительно сделав проверку на ее статус.
Цитата VVolf:
Проблема в том, что его можно засунуть максимум в автозагрузку, что бы при загрузке интернет подключался, либо использовать при обрыве связи »
|
А почему бы не затолкать в планировщик?