Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Angenommen, ein Debugtechniker ist nicht an der Website vorhanden, an der sich der zu debuggende Computer befindet. Der Debuggingtechniker fordert jemanden an dieser Website auf, diesen Zielcomputer mit einem Debugkabel mit einem anderen Computer zu verbinden.
Lassen Sie diesen anderen Computer mit der IP-Adresse 127.0.0.42 sein. Das Debugkabel verbindet COM1 an diesem Computer mit dem Port auf dem Zielcomputer, der für das Debugging aktiviert wurde. Der KD-Verbindungsserver wird mit diesem Befehl gestartet:
E:\Debugging Tools for Windows> kdsrv -t tcp:port=1027
An der anderen Stelle startet der Techniker WinDbg als intelligenter Client mit diesem Befehl:
G:\Debugging Tools> windbg -k kdsrv:server=@{tcp:server=127.0.0.42,port=1027},trans=@{com:port=com1,baud=57600} -y SymbolPath
Der Symbolpfad ist relativ zum Computer, auf dem der smarte Client ausgeführt wird.
Hier ist ein weiteres Beispiel. In diesem Fall wird das NPIPE-Protokoll ausgewählt, und KD wird anstelle von WinDbg verwendet. Der erste Benutzer wählt einen Pipe-Namen. Dies kann eine beliebige alphanumerische Zeichenfolge sein – in diesem Beispiel "KernelPipe". Der erste Benutzer öffnet ein Eingabeaufforderungsfenster mit erhöhten Rechten (als Administrator ausführen) und startet einen Debugserver, indem er die folgenden Befehle eingibt:
E:\Debugging Tools for Windows> set _NT_DEBUG_PORT=com1
E:\Debugging Tools for Windows> kdsrv -t npipe:pipe=KernelPipe
Der Techniker ist auf dem Clientcomputer mit einem Konto angemeldet, das keinen Zugriff auf den Servercomputer hat. Der Techniker kennt jedoch den Benutzernamen und das Kennwort für ein Konto, das Zugriff auf den Servercomputer hat. Der Benutzername für dieses Konto ist Contoso. Der Techniker gibt den folgenden Befehl ein:
net use \\BOX17\ipc$ /user:Contoso
Wenn Sie dazu aufgefordert werden, gibt der Techniker das Kennwort für das Contoso-Konto ein.
Der Techniker ist nicht sicher, welcher Name für die benannte Pipe verwendet wurde, sodass sie 127.0.0.42 für KD-Verbindungsserver abfragen:
G:\Debugging Tools> cdb -QR 127.0.0.42
Servers on 127.0.0.42:
Debugger Server - npipe:Pipe=MainPipe
Remote Process Server - npipe:Pipe=AnotherPipe
Remote Kernel Debugger Server - npipe:Pipe=KernelPipe
Es werden drei Rohre angezeigt. Es handelt sich jedoch nur um einen KD-Verbindungsserver – die anderen sind ein Debugserver und ein Benutzermodusprozessserver. Der Techniker gibt den folgenden Befehl ein, um den smarten Client zu starten:
G:\Debugging Tools> kd -k kdsrv:server=@{npipe:server=127.0.0.42,pipe=KernelPipe},trans=@{com:baud=57600} -y SymbolPath
Beachten Sie, dass die Baudrate zwar angegeben ist, der Port jedoch nicht. Dies bewirkt, dass der Debugger standardmäßig auf den in _NT_DEBUG_PORT angegebenen Port auf dem Computer zurückgreift, auf dem KdSrv ausgeführt wird.