Dela via


Fjärrfelsökning med WinDbg

Fjärrfelsökning omfattar två felsökningsprogram som körs på två olika platser. Felsökaren som utför felsökningen kallas felsökningsservern. Det andra felsökningsprogrammet, som kallas felsökningsklienten, styr felsökningssessionen från en fjärrplats. För att upprätta en fjärrsession måste du först konfigurera felsökningsservern och sedan aktivera felsökningsklienten.

Koden som debuggas kan köras på samma dator som kör felsökningsservern, eller så kan den köras på en separat dator. Om felsökningsservern utför felsökning i användarläge kan processen som debuggas köras på samma dator som felsökningsservern. Om felsökningsservern utför felsökning i kernelläge skulle koden som debuggas vanligtvis köras på en separat måldator.

Följande diagram illustrerar en fjärrsession där felsökningsservern, som körs på en värddator, utför kernellägesfelsökning av kod som körs på en separat måldator.

Diagram som illustrerar fjärr-, värd- och måldatorer som är anslutna för felsökning i kärnläge.

Viktig

Det finns ytterligare viktiga säkerhetsöverväganden när du använder fjärrfelsökning, för mer information, inklusive information om hur du aktiverar säkert läge, finns i Säkerhet under fjärrfelsökning och Säkerhetsöverväganden för Windows Felsökningsverktyg.

Det finns flera transportprotokoll som du kan använda för en fjärrfelsökningsanslutning: TCP, NPIPE, SPIPE, SSL och COM-port. Anta att du har valt att använda TCP som protokoll och att du har valt att använda WinDbg som både felsökningsklienten och felsökningsservern. Du kan använda följande procedur för att upprätta en fjärrfelsökningssession i kernelläge.

  1. På värddatorn öppnar du WinDbg och upprättar en felsökningssession i kernelläge med en måldator. (Se Live Kernel-Mode Felsökning med WinDbg (Klassisk).)

  2. Bryt in genom att välja Bryt från menyn Felsöka eller genom att trycka på CTRL-Break.

  3. I felsökningskommandofönster , ange följande kommando.

    .server tcp:port=5005

    Obs Portnumret 5005 är godtyckligt. Portnumret är ditt val.

  4. WinDbg svarar med utdata som liknar följande.

    Server started.  Client can connect with any of these command lines
    0: <debugger> -remote tcp:Port=5005,Server=YourHostComputer
    
  5. Öppna WinDbg på fjärrdatorn och välj Anslut till fjärrsession från menyn Fil.

  6. Under Anslutningsstränganger du följande sträng.

    tcp:Port=5005,Server=YourHostComputer

    där YourHostComputer är namnet på värddatorn, som kör felsökningsservern.

    Välj OK.

Använda kommandoraden

Som ett alternativ till proceduren i föregående avsnitt kan du konfigurera en fjärrfelsökningssession på kommandoraden. Anta att du är konfigurerad för att upprätta en felsökningssession i kernelläge, mellan en värddator och en måldator, via en 1394-kabel på kanal 32. Du kan använda följande procedur för att upprätta en fjärrfelsökningssession:

  1. På värddatorn anger du följande kommando i kommandotolkens fönster.

    windbg -server tcp:port=5005 -k 1394:channel=32

  2. På fjärrdatorn anger du följande kommando i kommandotolken.

    windbg -remote tcp:Port=5005,Server=YourHostComputer

    där YourHostComputer är namnet på värddatorn, som kör felsökningsservern.

Viktig

1394-transporten är tillgänglig för användning i Windows 10, version 1607 och tidigare. Den är inte tillgänglig i senare versioner av Windows. Du bör överföra dina projekt till andra transporter, till exempel KDNET med Ethernet. Mer information om den transporten finns i Konfigurera KDNET-nätverkskärnfelsökning automatiskt.

Ytterligare information

Det finns många sätt att upprätta fjärrfelsökning än de som visas i det här avsnittet. Fullständig information om hur du konfigurerar en felsökningsserver i kommandofönstret WinDbg Felsökningsprogramfinns i .server (Skapa felsökningsserver). Fullständig information om hur du startar WinDbg (och upprättar fjärrfelsökning) på kommandoraden finns i WinDbg Command-Line Options.