Felsöka tjänstprogrammet automatiskt

Ett felsökningsprogram kan startas automatiskt när tjänstprogrammet startas. Alternativt kan den startas automatiskt när tjänstprogrammet stöter på ett undantag eller kör ett DebugBreak-kommando . Om du har valt någon av dessa metoder förklarar det här avsnittet hur du fortsätter. Om du inte är säker på vilken metod du ska välja kan du läsa Välja den bästa metoden.

Använd sedan följande procedur:

  1. Gör något av följande förberedande steg:

  2. Om tjänsten redan körs måste du starta om den för att ändringarna ska börja gälla. Vi rekommenderar att du startar om Själva Windows för att ta bort eventuella effekter av den tjänst som körs. Om du inte vill starta om Windows använder du följande kommandon, där ServiceName är namnet på tjänsten:

    net stop ServiceName 
    net start ServiceName 
    
  3. Om du har valt att felsöka initieringskoden för tjänstprogrammet startas felsökningsprogrammet när tjänsten startas och kopplas till tjänstprogrammet.

    Om du har valt att låta felsökningsprogrammet utlösas av ett undantag körs tjänstprogrammet normalt tills det stöter på ett undantag eller kör en DebugBreak-funktion . Nu startas felsökningsprogrammet och kopplas till tjänstprogrammet.

  4. Nästa steg beror på den felsökningskommandorad som du angav under steg 1:

    • Om du har angett ett felsökningsprogram utan några alternativ för fjärrkommunikation startas det här felsökningsprogrammet och dess fönster blir synligt.
    • Om du har angett NTSD med alternativen -server och -noio startas NTSD utan konsolfönster. Du kan sedan ansluta till felsökningssessionen från en annan dator genom att starta valfritt felsökningsprogram i användarläge med parametern -remote. Anvisningar finns i Aktivera en felsökningsklient.
    • Om du har angett NTSD med alternativet -d startas NTSD utan konsolfönster. Du kan sedan ansluta till felsökningssessionen med hjälp av kernelbugger som körs på en annan dator. För instruktioner, se Kontrollera User-Mode-felsökaren från kernelfelsökaren.
    • Om du har angett NTSD med alternativen -ddefer och -server startas NTSD utan konsolfönster. Du kan sedan ansluta till felsökningssessionen med hjälp av både ett kernelfelsökare och ett fjärrfelsökare i användarläge som körs på en annan dator än tjänsten (men möjligen samma dator som varandra). Instruktioner finns i Kombinera den här metoden med fjärrfelsökning.
  5. När felsökningsprogrammet startar pausar tjänsten vid den första processbrytningspunkten, undantaget eller kommandot DebugBreak . På så sätt kan du undersöka tjänstprogrammets aktuella tillstånd, ange brytpunkter och göra andra önskade konfigurationsalternativ.

  6. Använd g (Go) eller ett annat körningskommando för att återuppta körningen av tjänsteapplikationen.

Se även

Funktionen DebugBreak