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.
W tej sekcji opisano sposób rejestrowania śladów debugowania w trybie podróży w czasie (TTD). Istnieją dwa sposoby rejestrowania śladu w usłudze WinDbg, uruchamianie pliku wykonywalnego (zaawansowane) i dołączanie do procesu.
Uruchamianie pliku wykonywalnego (zaawansowane)
Aby uruchomić plik wykonywalny i zarejestrować ślad TTD, wykonaj następujące kroki.
W usłudze WinDbg wybierz pozycję Plik>Rozpocznij debugowanie>Uruchom plik wykonywalny (zaawansowane).
Wprowadź ścieżkę do pliku wykonywalnego trybu użytkownika, który chcesz uruchomić, lub wybierz opcję Przeglądaj, aby przejść do tego pliku. Aby uzyskać informacje na temat pracy z menu Uruchom plik wykonywalny w usłudze WinDbg, zobacz WinDbg — uruchamianie sesji trybu użytkownika.
Zaznacz pole Rekord z debugowaniem podróży czasowej , aby zarejestrować ślad po uruchomieniu pliku wykonywalnego.
Jeśli wybierzesz pozycję Konfiguruj i zarejestrujesz , będzie można skonfigurować lokalizację dla pliku śledzenia.
Aby ograniczyć rejestrowanie do określonych modułów, zaznacz pole wyboru "Rejestruj podzbiór wykonywania" i wpisz nazwy modułów. Jeśli na przykład chcesz zarejestrować wykonanie notepad.exe, wpisz "notepad.exe" w polu tekstowym. Jeśli chcesz zarejestrować wykonywanie notepad.exe i kernelbase.dll, wpisz "notepad.exe,kernelbase.dll" w polu tekstowym.
Wybierz przycisk OK , aby uruchomić plik wykonywalny i rozpocząć nagrywanie.
Zostanie wyświetlone okno dialogowe nagrywania wskazujące, że śledzenie jest rejestrowane.
Zobacz Jak rejestrować informacje na temat nagrywania.
Dołącz do procesu
Aby dołączyć do procesu i zarejestrować ślad TTD, wykonaj następujące kroki.
W usłudze WinDbg wybierz pozycję Plik>Rozpocznij debugowanie>Dołącz do procesu.
Wybierz proces trybu użytkownika, który chcesz śledzić. Aby uzyskać informacje na temat pracy z menu Dołączanie do procesu w usłudze WinDbg, zobacz WinDbg — uruchamianie sesji trybu użytkownika.
Zaznacz pole Rejestrowanie procesu z debugowaniem podróży czasowej , aby utworzyć ślad po uruchomieniu pliku wykonywalnego.
Wybierz pozycję Dołącz , aby rozpocząć nagrywanie.
Zostanie wyświetlone okno dialogowe nagrywania wskazujące, że śledzenie jest rejestrowane.
Zobacz Jak rejestrować informacje na temat nagrywania.
Jak zarejestrować
Proces jest rejestrowany, więc jest to miejsce, w którym należy spowodować problem, który chcesz debugować. Możesz otworzyć problematyczny plik lub wybrać konkretny przycisk w aplikacji, aby spowodować wystąpienie zdarzenia zainteresowania.
Podczas wyświetlania okna dialogowego nagrywania można wykonać następujące czynności:
- Zatrzymaj i debuguj — wybranie tej opcji spowoduje zatrzymanie nagrywania, utworzenie pliku śledzenia i otwarcie pliku śledzenia w celu rozpoczęcia debugowania.
- Anuluj — wybranie tej opcji spowoduje zatrzymanie nagrywania i utworzenie pliku śledzenia. Plik śledzenia można otworzyć później.
Po zakończeniu nagrywania zamknij aplikację lub naciśnij pozycję Zatrzymaj i debuguj.
Uwaga
Zarówno zatrzymaj i debuguj, jak i anuluj, zakończą skojarzony proces.
Po zakończeniu rejestrowania aplikacji plik śledzenia zostanie zamknięty i zapisany na dysku. Jest to przypadek, jeśli twój program również ulegnie awarii.
Po otwarciu pliku śledzenia debuger automatycznie zaindeksuje plik śledzenia. Indeksowanie umożliwia dokładniejsze i szybsze wyszukiwanie wartości pamięci. Ten proces indeksowania trwa dłużej w przypadku większych plików śledzenia.
... 00007ffc`61f789d4 c3 ret 0:000> !index Indexed 1/1 keyframes Successfully created the index in 96ms.Uwaga
Ramka kluczowa to lokalizacja w ślad używany do indeksowania. Ramki kluczowe są generowane automatycznie. Większe ślady będą zawierać więcej klatek kluczowych. Po zaindeksowaniu śladu wyświetlana jest liczba klatek kluczowych.
W tym momencie jesteś na początku pliku śledzenia i możesz poruszać się do przodu i do tyłu w czasie.
Wskazówka
Używanie punktów przerwania to typowe podejście do wstrzymania wykonywania kodu w pewnym przypadku zainteresowania. Wyjątkową cechą TTD jest możliwość ustawienia punktu przerwania i podróżowania w czasie aż do jego osiągnięcia po zarejestrowaniu śladu. Możliwość sprawdzenia stanu procesu po wystąpieniu problemu w celu określenia najlepszej lokalizacji punktu przerwania umożliwia dodatkowe przepływy pracy debugowania. Aby zapoznać się z przykładem użycia punktu przerwania w przeszłości, zobacz Debugowanie podróży w czasie — przewodnik po przykładowej aplikacji.
Następne kroki
Po zarejestrowaniu śladu TTD możesz go odtworzyć lub pracować z plikiem śladu, na przykład udostępniając go współpracownikowi. Aby uzyskać więcej informacji, zobacz te tematy.
Debugowanie podróży w czasie - ponowne odtwarzanie śladu
Debugowanie podróży w czasie — praca z plikami śledzenia
Debugowanie podróży w czasie — rozwiązywanie problemów
Debugowanie podróży w czasie — przewodnik po przykładowej aplikacji
Zobacz też
Debugowanie podróży w czasie — omówienie