Freigeben über


Aktivieren eines Debugclients

Nachdem der Debugserver aktiviert wurde, können Sie einen Debugclient auf einem anderen Computer starten und eine Verbindung mit der Debugsitzung herstellen.

Es gibt zwei Möglichkeiten, einen Debugclient zu starten: mithilfe der -remote Befehlszeilenoptionoder mithilfe der grafischen WinDbg-Schnittstelle.

Das Protokoll des Clients muss mit dem Protokoll des Servers übereinstimmen. Die allgemeine Syntax für das Starten eines Debugclients hängt vom verwendeten Protokoll ab. Die folgenden Optionen sind vorhanden:

Empfohlenen Verbindungsmethoden mit einigen zusätzlichen Sicherheits-

Debugger -remote spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password] 

Debugger -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password] 

Debugger -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password] 

unsicheren Verbindungsmethoden

Debugger -remote npipe:server=Server,pipe=PipeName[,password=Password] 

Debugger -remote tcp:server=Server,port=Socket[,password=Password][,ipversion=6] 

Debugger -remote tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6] 

Debugger -remote com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] 

Um die grafische Schnittstelle zum Herstellen einer Verbindung mit einer Remotedebuggingsitzung verwenden zu können, muss WinDbg im ruhenden Modus sein . Sie muss entweder ohne Befehlszeilenparameter gestartet worden sein oder die vorherige Debugsitzung beendet haben. Wählen Sie die Datei | Stellen Sie eine Verbindung mit remotesitzung Menübefehl her, oder drücken Sie STRG+R. Wenn das Dialogfeld Verbindung mit Remotedebuggersitzung angezeigt wird, geben Sie eine der folgenden Zeichenfolgen in das Textfeld Verbindungszeichenfolge ein:

Empfohlenen Verbindungsmethoden mit einigen zusätzlichen Sicherheits-

spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password] 

ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password] 

ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password] 

unsicheren Verbindungsmethoden

npipe:server=Server,pipe=PipeName[,password=Password] 

tcp:server=Server,port=Socket[,password=Password][,ipversion=6] 

tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6] 

com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] 

Alternativ können Sie die Schaltfläche Durchsuchen verwenden, um aktive Debugserver zu finden.

Wichtig

Bei der Verwendung des Remotedebuggings gibt es wichtige Sicherheitsaspekte. Weitere Informationen, einschließlich Informationen zum Aktivieren des sicheren Modus, finden Sie unter Sicherheit beim Remotedebugging und Sicherheitsüberlegungen für Windows-Debuggingtools.

Parameter

Die Parameter in den vorherigen Befehlen weisen die folgenden möglichen Werte auf:

Debugger-
Dies muss nicht derselbe Debugger sein wie der vom Debugclient verwendete- WinDbg, KD und CDB sind für Remotedebugging über den Debugger austauschbar.

Server-
Dies ist der Netzwerkname oder die IP-Adresse des Computers, auf dem der Debugserver erstellt wurde. Die beiden anfänglichen Schrägstriche (\) sind in der Befehlszeile optional, sind aber im Dialogfeld WinDbg nicht zulässig.

pipe=PipeName
Wenn NPIPE- oder SPIPE-Protokoll verwendet wird, ist PipeName der Name, der der Pipe beim Erstellen des Servers zugewiesen wurde.

Wenn Sie nicht bei dem Clientcomputer mit einem Konto angemeldet sind, das Zugriff auf den Servercomputer hat, müssen Sie einen Benutzernamen und ein Kennwort angeben. Geben Sie auf dem Clientcomputer in einem Eingabeaufforderungsfenster den folgenden Befehl ein.

Net use \\Server\ipc$ /user:UserName

dabei ist Server- der Name des Servercomputers, und UserName- ist der Name eines Kontos, das Zugriff auf den Servercomputer hat.

Wenn Sie dazu aufgefordert werden, geben Sie das Kennwort für UserNameein.

Nachdem dieser Befehl erfolgreich ausgeführt wurde, können Sie einen Debugclient mithilfe der Befehlszeilenoption -remote oder mithilfe der grafischen WinDbg-Schnittstelle aktivieren.

Hinweis Möglicherweise müssen Sie die Datei- und Druckerfreigabe auf dem Servercomputer aktivieren. Navigieren Sie in der Systemsteuerung zu Netzwerk- und Internet-> Netzwerk- und Freigabecenter> Erweiterte Freigabeeinstellungen. Wählen Sie Datei- und Druckerfreigabeaktivieren.

Port=Socket-
Wenn TCP- oder SSL-Protokoll verwendet wird, ist Socket- die gleiche Socketportnummer, die beim Erstellen des Servers verwendet wurde.

clicon
Gibt an, dass der Debugserver versucht, über eine Reverseverbindung eine Verbindung mit dem Client herzustellen. Der Client muss clicon verwenden, wenn und nur, wenn der Server cliconverwendet. In den meisten Fällen wird der Debugclient vor dem Debugserver gestartet, wenn eine Reverseverbindung verwendet wird.

port=COMPort-
Wenn COM-Protokoll verwendet wird, gibt COMPort- den zu verwendenden COM-Port an. Das Präfix "COM" ist optional , z. B. sind sowohl "com2" als auch "2" zulässig.

baud=BaudRate
Wenn das COM-Protokoll verwendet wird, sollte BaudRate- mit der bei der Erstellung des Servers gewählten Baudrate übereinstimmen.

Channel=COMChannel
Wenn COM-Protokoll verwendet wird, sollte COMChannel- mit der Kanalnummer übereinstimmen, die beim Erstellen des Servers ausgewählt wurde.

proto=Protocol
Wenn SSL- oder SPIPE-Protokoll verwendet wird, sollte Protokoll- mit dem sicheren Protokoll übereinstimmen, das beim Erstellen des Servers verwendet wird.

Cert-
Wenn SSL- oder SPIPE-Protokoll verwendet wird, sollten Sie den identischen certuser=Cert oder machuser=Cert Parameter verwenden, der beim Erstellen des Servers verwendet wurde.

password=Password
Wenn beim Erstellen des Servers ein Kennwort verwendet wurde, müssen Kennwort- angegeben werden, um den Debugclient zu erstellen. Es muss mit dem ursprünglichen Kennwort übereinstimmen. Bei Kennwörtern wird zwischen Groß- und Kleinschreibung unterschieden. Wenn das falsche Kennwort angegeben wird, gibt die Fehlermeldung "Fehler 0x80004005" an. Kennwörter müssen zwölf Zeichen oder weniger lang sein.

ipversion=6
(Nur Debugtools für Windows 6.6.07 und frühere Versionen) Erzwingt, dass der Debugger IP-Version 6 anstelle von Version 4 verwendet, wenn TCP zum Herstellen einer Internetverbindung verwendet wird. In Windows Vista und höheren Versionen versucht der Debugger, die IP-Standardversion 6 automatisch zu verwenden, wodurch diese Option unnötig ist.

Befehlszeilenoptionen zum Starten neuer Debugsitzungen (z. B. -p) können nicht vom Debugclient, sondern nur vom Server verwendet werden. Konfigurationsoptionen (z. B. -n) funktionieren entweder vom Client oder vom Server.