windows - kunne ikke stoppe rettidigt

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har en windows service, som jeg planlægger at gøre en automatisk genstart gennem Windows Batch-fil ved hjælp af 'net stop' kommando. Nogle gange kan tjenesten stoppe brat og vise en meddelelsesboks 'Kunne ikke stoppe windows service'.


Vær venlig at rådgive mig, hvis jeg stopper tjenesten fra Windows-batchfil ved hjælp af 'netstop' -kommandoen, om popup-meddelelsen vises, hvis kommandoen ikke er i stand til at stoppe tjenesten. Venligst bistå.

Bedste reference


Net Stop er synkron, hvilket betyder, at det vil vente, indtil tjenesten er stoppet.


Så du planlægger at genstarte tjenesten bare gøre


net stop servicename && net start servicename


net stop vil vente til tjenesten er stoppet og derefter køre net start


Ved hjælp af && -metoden svarer vi også på den første kommando for at være vellykket, så kør den anden, hvis den første kommando fejler, løber den ikke den anden kommando.


Hvis du har en meget stædig tjeneste, som ikke kan stoppe, kan du bygge i en loop for at kontrollere, om den kører ved at bruge tasklist, så forsøg at genstarte hvis \%ERRORLEVEL\% ikke er 0.


Du kan også se, hvor lang tid der er for Time Kill i regedit:


HKEY\_LOCAL\_MACHINESYSTEMCurrentControlSetControlWaitToKi‌​llServiceTimeout


Mine for eksempel i Windows 8 er sat til 5000 seconds