Muszę sprawdzić, czy moja usługa okienna działa, czy nie, co 15 minut.Sprawdź, czy działa usługa Windows?
Jeśli nie jest uruchomiony, to w jaki sposób mogę ponownie uruchomić usługę Windows?
Muszę sprawdzić, czy moja usługa okienna działa, czy nie, co 15 minut.Sprawdź, czy działa usługa Windows?
Jeśli nie jest uruchomiony, to w jaki sposób mogę ponownie uruchomić usługę Windows?
Można sprawdzić, czy usługa jest uruchomiona z ServiceController:
ServiceController sc = new ServiceController("servicename");
if ((sc.Status.Equals(ServiceControllerStatus.Stopped)) ||
(sc.Status.Equals(ServiceControllerStatus.StopPending)))
{
// Start the service if the current status is stopped.
sc.Start();
}
Oczywiście, trzeba będzie nazwać to z innej usługi lub utwórz go jako małego programu, który następnie można zaplanować, aby uruchomić co 15 minut.
dzięki za ans, ale to zrobiłem, ale gdy jest zatrzymany sc.start() daje błąd, ponieważ nie może uruchomić usługi na nazwie komputera ".". – user280154
@user: Ow, ale to jest inny problem. Dziennik zdarzeń powinien pokazywać więcej szczegółów o tym, dlaczego usługa nie może się uruchomić. – fretje
Sprawdź, czy usługa Windows nie jest uruchomiona, ten kod nie będzie działał poprawnie, więc sprawdź, czy usługa jest uruchomiona czy nie dla tej usługi Windows. – user280154
Jeśli usługa nie działa, nie może sam sprawdzić.
Będziesz musiał użyć drugiej usługi, która sprawdza.
prawo, które było ans szukałem teraz moje następne pytanie będzie można użyć wątku, aby to zrobić, jeśli tak, to jak mogę zrobić wątek z bieżącej usługi, jeśli możesz udostępnić dowolną stronę, która wyjaśnia, że byłoby bardzo docenione. – user280154
@ user280154 - Proszę zadać pytanie wątku jako nowe pytanie.I nie zapominaj, aby _accept_ odpowiedź (kliknij znak wyboru obok odpowiedzi, którą lubisz). – Oded
Nie potrzeba dodatkowego procesu, aby odzyskać swoją usługę:
Jeśli chcesz mieć pewność, że usługa Windows jest zawsze uruchomiony, należy sprawdzić jego właściwości w zakładce odzyskiwania. Ustaw wszystkie niepowodzenia na "Uruchom ponownie usługę" i ustaw "Uruchom ponownie usługę po" na 0 minut. W chwili zniknięcia usługi natychmiast zostanie uruchomiona ponownie. Zwiększenie limitu czasu, jeśli jest ok poczekać nieco dłużej przed ponowne uruchomienie odbywa się:
Service Recovery settings http://www.robvangroenewoud.com/images/service_recovery.png
Wbudowana funkcjonalność systemu Windows Usługi naprawy (patrz zrzut ekranu w poście Roba powyżej) będzie prawdopodobnie zaspokojenia swoich potrzeb. Jeśli nie, sugeruję wypróbowanie wersji Service Protector, która jest przeznaczona do automatycznego utrzymywania ważnych usług Windows przez 24 godziny na dobę, 7 dni w tygodniu.
Z inną usługą Windows? –
Nie w usłudze – user280154
Nie wiem, jak mam usługę okna i próbowałem go uruchomić, jeśli nie działa, ale nie jestem w stanie to zrobić – user280154