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.
Ręczne dołączanie do aplikacji usługi po jej uruchomieniu jest podobne do debugowania dowolnego procesu w trybie użytkownika.
Użyj narzędzia TList z opcją /s , aby wyświetlić identyfikator procesu (PID) każdego uruchomionego procesu i usług aktywnych w każdym procesie.
Jeśli aplikacja usługi, którą chcesz debugować, jest połączona z innymi usługami w jednym procesie, musisz ją odizolować przed debugowaniem. W tym celu wykonaj procedurę opisaną w sekcji Izolowanie usługi. Na końcu tej procedury uruchom ponownie usługę.
Aby określić nową nazwę PID usługi, wydaj następujące polecenie Service Configuration Tool (Sc.exe), gdzie ServiceName jest nazwą usługi:
sc queryex ServiceName
Teraz uruchom WinDbg lub CDB, używając tę aplikację usługi jako obiekt docelowy. Istnieją trzy sposoby, aby to zrobić: określając identyfikator PID z opcją -p, określając nazwę pliku wykonywalnego za pomocą opcji -pn (jeśli nazwa pliku wykonywalnego jest unikatowa) lub określając nazwę usługi z opcją -psn.
Jeśli na przykład proces SpoolSv.exe ma piD 651 i zawiera usługę o nazwie Spooler, następujące trzy polecenia są równoważne:
windbg -p 651 [AdditionalOptions]
windbg -pn spoolsv.exe [AdditionalOptions]
windbg -psn spooler [AdditionalOptions]
Po uruchomieniu debugera przejdź tak, jak w każdej innej sesji debugowania w trybie użytkownika.