Oto co robię:
- Ustaw projekt C ++ jako projekt startowy
- Budować
- Ustaw wiele punktów przerwania
- naciśnij F5
rozpoczęto prawidłowy projekt, punkty przerwania są wyświetlane jako prawidłowe i załadowane (wypełnione czerwone kółko), studio wizualne mówi „Uruchomienie” na pasku tytułowym, pasek narzędzi debugowania jest aktywny, ale program nie zatrzymuje się na punktach przerwania.
Jeśli użyję funkcji dołączania do procesu i wybiorę „Kod zarządzany (v4.6, v4.5, v4.0), kod macierzysty”, program zatrzymuje się w punktach przerwania i mogę poprawnie debugować.
czy ktoś ma jakieś wskazówki, jak to rozwiązać lub rozwiązać?
na marginesie (nie wiem, czy problemy są ze sobą powiązane), mój klawisz F11 (krok w) również nie działa, próbowałem zresetować ustawienia Visual Studio, ale to nie rozwiązało problemu.
[EDYTOWANE] Jeśli muszę debugować kod, zanim przygotuję interakcję użytkownika, muszę skonfigurować coś, co zablokuje program, dopóki nie będę mógł dołączyć do procesu.
Odpowiedzi:
Teraz mam nadzieję zrozumieć, czego potrzebujesz.
Spójrz na metodę Debugger.Launch Method ():
Będziesz potrzebował metody Debugger.Break Method ():
Możesz więc użyć go w kodzie źródłowym bezpośrednio za punktem wejścia w następujący sposób:
Twój program zatrzyma się w tym momencie i możesz debugować!
źródło
w końcu naprawiłem to, wykonując następujące czynności (nie wiem, czy to najlepszy sposób, ale zadziałało to dla mnie)
Przejdź do Opcje debugowania programu Visual Studio (jeden z dwóch poniższych sposobów spowoduje otwarcie tej samej strony w oknie dialogowym opcji)
Następnie na tej stronie należy wyłączyć:
Następnie pamiętaj, aby włączyć
Teraz przejdź do okna dialogowego Dołącz do procesu:
Następnie dla każdego projektu, który chcesz debugować:
Teraz naciśnij F5 i wszystkie zarządzane i niezarządzane punkty przerwania powinny być aktywne !!!
źródło