Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Załóżmy, że jedna osoba uruchamia aplikację na komputerze o nazwie \\BOX17. Ta aplikacja ma problemy, ale technik debugowania znajduje się w innej lokacji.
Pierwsza osoba konfiguruje serwer debugowania przy użyciu usługi CDB na \\BOX17. Aplikacja docelowa ma identyfikator procesu 122. Wybrano protokół TCP z numerem portu gniazda 1025. Serwer jest uruchamiany przez wprowadzenie następującego polecenia w oknie wiersza polecenia z podwyższonym poziomem uprawnień (Uruchom jako administrator):
E:\Debugging Tools for Windows> cdb -server tcp:port=1025 -p 122
Na innym komputerze technik decyduje się użyć WinDbg jako klienta debugowania. Można go uruchomić za pomocą tego polecenia:
G:\Debugging Tools> windbg -remote tcp:server=BOX17,port=1025
Oto kolejny przykład. W takim przypadku wybrano protokół NPIPE, a usługa CDB jest używana zamiast WinDbg. Pierwszy użytkownik wybiera nazwę potoku. Może to być dowolny ciąg alfanumeryczny — w tym przykładzie "MainPipe". Pierwszy użytkownik otwiera okno wiersza polecenia z podwyższonym poziomem uprawnień (Uruchom jako administrator) i uruchamia serwer debugowania, wprowadzając następujące polecenie:
E:\Debugging Tools for Windows> cdb -server npipe:pipe=MainPipe -v winmine.exe
Technik jest zalogowany na komputerze klienckim przy użyciu konta, które nie ma dostępu do komputera serwera. Jednak technik zna nazwę użytkownika i hasło dla konta, które ma dostęp do komputera serwera. Nazwa użytkownika tego konta to Contoso. Technik wprowadza następujące polecenie:
net use \\BOX17\ipc$ /user:Contoso
Po wyświetleniu monitu technik wprowadza hasło dla konta contoso.
Technik nie jest pewien, jaka nazwa została użyta dla nazwanego potoku, aby wysłać zapytanie do BOX17 o dostępne serwery debugowania.
G:\Debugging Tools> cdb -QR \\BOX17
Servers on \\BOX17:
Debugger Server - npipe:Pipe=MainPipe
Remote Process Server - npipe:Pipe=AnotherPipe
Wyświetlane są dwie rury. Jednak tylko jeden jest serwerem debugowania — drugi jest serwerem przetwarzania i nie jesteśmy tym zainteresowani. Dlatego MainPipe musi być poprawną nazwą. Technik używa następującego polecenia, aby uruchomić klienta debugowania:
G:\Debugging Tools> cdb -remote npipe:server=BOX17,pipe=MyPipe
Korzystanie z bezpiecznego serwera
Oto przykład bezpiecznego serwera. Ten serwer używa warstwy bezpiecznych gniazd z protokołem S-Channel TLS1. Debuger wyszuka certyfikat w magazynie maszyn. Certyfikat jest określany przez jego szesnastkowy odcisk.
D:\> cdb -server "ssl:proto=tls1,machuser=ab 38 f7 ae 13 20 ac da 05 14 65 60 30 83 7b 83 09 2c d2 34,port=1234" notepad.exe