Debuggen mit WinDbg

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019 | TFS 2018

Azure Artifacts bietet einen dedizierten Symbolserver, um Ihre Symbole zu veröffentlichen. Sie können einen Debugger verbinden, um die richtigen Symboldateien automatisch abzurufen und Ihre Anwendung zu debuggen. Mithilfe von WinDbg können Sie eine ausführbare Datei laden oder den Debugger an einen ausgeführten Prozess anfügen, Ihre Symbole nutzen, Haltepunkte einrichten und Ihren Code durchlaufen und analysieren.

Hinzufügen des Symbolservers zu WinDbg

Um den Azure Artifacts-Symbolserver zu verwenden, müssen Sie Ihrer Organisation den Suchpfad für Symbole hinzufügen, aber bevor wir dies tun können, müssen wir zuerst ein persönliches Zugriffstoken erstellen.

  1. Erstellen Sie ein persönliches Zugriffstoken mit Symbolen (Lesebereich), und kopieren Sie es in ihre Zwischenablage.

  2. Öffnen Sie WinDbg, oder installieren Sie es, wenn Sie noch nicht vorhanden sind.

  3. Wählen Sie "File>OpenExecutable" aus, um die ausführbare Datei zu laden, die Sie debuggen möchten.

  4. Führen Sie den folgenden Befehl aus, um den Symbolpfad festzulegen. Ersetzen Sie den Platzhalter <ORGANIZATION_NAME> durch den Namen Ihrer Organisation:

    .sympath+ https://artifacts.dev.azure.com/<ORGANIZATION_NAME>/_apis/symbol/symsrv
    
  5. Legen Sie einen Haltepunkt fest, indem Sie den Befehl "bp" ausführen. dadurch wird eine Symbolanforderung ausgelöst.

  6. Fügen Sie in der Authentifizierungsaufforderung Ihr persönliches Zugriffstoken ein, das Sie zuvor erstellt haben. Sie können das Benutzernamesfeld leer lassen.

WinDbg sollte dann die Symbole für Ihre ausführbare Datei erwerben. Um zu überprüfen, ob Ihre Symbole geladen werden, führen Sie den lm-Befehl aus, um alle geladenen Module auflisten zu können.

Starten des Debugvorgangs

Mit WinDbg können Sie sowohl Kernelmodus- als auch Benutzermoduskomponenten debuggen: