Jak naprawić „Punkt przerwania nie zostanie obecnie trafiony. Dla tego dokumentu nie załadowano żadnych symboli. ” ostrzeżenie?

1573

Aplikacja komputerowa C # w wersji ekspresowej działała, a następnie nie działała 5 sekund później.

Próbowałem następujące:

  • Upewnij się, że konfiguracja debugowania, flaga debugowania i pełne informacje debugowania są ustawione dla wszystkich zestawów.
  • Usuń wszystkie foldery bin i obj oraz wszystkie biblioteki DLL związane z projektem z całego mojego komputera.
  • Odtwórz projekty powodujące problem od zera.
  • Restart.

W rozwiązaniu mam dwa projekty WinForm. Jeden z nich ładuje informacje debugowania, drugi nie. Oba odnoszą się do zestawu, w którym próbuję uzyskać informacje debugowania w dokładnie taki sam sposób w pliku projektu. Jakieś pomysły?


Chcę dodać tutaj, głównie dla siebie, gdy wrócę, aby przejrzeć to pytanie, że symbole nie są ładowane, dopóki zestaw nie zostanie załadowany, a zestaw nie zostanie załadowany, dopóki nie będzie potrzebny. Jeśli punkt przerwania znajduje się w bibliotece, która jest używana tylko w jednej funkcji w głównym zestawie, symbole nie zostaną załadowane (i pokaże punkt przerwania jako nie trafiony), dopóki ta funkcja nie zostanie wywołana.

Łowca instancji
źródło
119
Podczas debugowania przejdź do widoku Debugowanie, Windows, Moduły. Spowoduje to wyświetlenie informacji o załadowanych modułach i statusie symbolu. Możesz kliknąć moduł prawym przyciskiem myszy i spróbować załadować symbole z innej lokalizacji.
Polyfun
14
Wersja ekspresowa nie ma widoku Moduły.
Instance Hunter
12
Dobra uwaga na temat zespołów, które nie są ładowane, dopóki nie będą potrzebne. Debuger pokaże, że punkt przerwania nie zostanie trafiony, ale ekran zmieni się / twój punkt przerwania zostanie trafiony po załadowaniu zestawu. Tandetnym obejściem tego problemu z interfejsem użytkownika byłoby wywołanie zestawu na początku programu w celu wymuszenia załadowania zestawu.
Tim Coker
1
Miałem ten sam problem i zauważyłem, że dla tej konfiguracji kompilacji nie miałem <DebugSymbols>true</DebugSymbols>go pod VS2015, dodałem go ręcznie i działało dobrze.
kuskmen
4
Usunięcie pliku .suo mogło rozwiązać ten brzydki problem w moim projekcie
Roland

Odpowiedzi:

1082

Rozpocznij debugowanie, gdy tylko dojdziesz do punktu przerwania lub Debug > Break Allużyjesz, użyj Debug > Windows > Modules. Zobaczysz listę wszystkich zestawów załadowanych do procesu. Znajdź ten, dla którego chcesz uzyskać informacje debugowania. Kliknij go prawym przyciskiem myszy i wybierz Informacje o ładowaniu symbolu. Pojawi się okno dialogowe z listą wszystkich katalogów, w których szukał pliku .pdb dla zestawu. Sprawdź tę listę w stosunku do rzeczywistej lokalizacji .pdb. Upewnij się, że nie znajdzie starego.

W normalnych projektach zestaw i jego plik .pdb powinny zawsze być kopiowane przez IDE do tego samego folderu, co plik .exe. Folder bin \ Debug twojego projektu. Pamiętaj, aby usunąć jeden z GAC, jeśli grałeś nim.

Hans Passant
źródło
4
W rzeczywistości taki był problem w mojej sprawie. Mieliśmy postkompilację, która sprawiła, że ​​nie była uważana za „kod użytkownika” ... teraz muszę zobaczyć, co jest grane, ale potwierdziłem, że bez modyfikacji po kompilacji symbole są ładowane. @Hans dziękuję, uratowałem mi kilka dobrych minut! wysyła wirtualne piwo
eglasius
29
Pytanie dotyczy wydania ekspresowego, do którego niestety ta odpowiedź nie ma zastosowania. Właściwie żadna z odpowiedzi nie działa, próbowałem również usunąć folder debugowania i przebudować.
Nicolas Raoul,
3
Microsoft Visual Studio Express 2013 dla sieci nie ma opcji debugowania modułów systemu Windows. Howo użyć naprawić to w tym przypadku?
Andrus
3
Jako wskazówkę włącz wyjątki, aby pękały tam, gdzie chcesz (jeśli nie możesz umieścić punktu przerwania na początku procesu) ... Następnie postępuj zgodnie z zalecanym przez Hana procesem Debugowanie> Windows> Moduły. Poszukaj projektu, do którego próbowałeś wkroczyć i spójrz na PATH. jeśli mówi „C: \ windows \ assembly”, to wskazuje na bibliotekę GAC, a NIE na projekt ...
Andy Danger Gagne
5
miałem aktywną konfigurację rozwiązania dla mojego rozwiązania ustawioną na Release, zmieniając ją z powrotem na Debuguj, aby rozwiązać mój problem. Ta odpowiedź pomogła mi „pamiętać”, czego szukać
gilad,
436

Najpierw spróbuj odbudować swój projekt klikając prawym przyciskiem myszy projekt> Przebuduj Jeśli to nie działa, spróbuj wyczyścić projekt (kliknij prawym przyciskiem myszy na projekt> wyczyść)

Jeśli to nie zadziała, sprawdź to:

  1. Kliknij projekt prawym przyciskiem myszy
  2. Wybierz [Właściwości]
  3. Wybierz [] Konstruowanie kartę
  4. Upewnij się, że [Definiuj stałą DEBUG] i [Definiuj stałą TRACE] są zaznaczone
  5. Upewnij się, że [Optymalizuj kod] nie jest zaznaczone
  6. Kliknij przycisk [Zaawansowane] u dołu strony kompilacji
  7. Upewnij się, że [Informacja debugowania:] jest ustawiona na [pełna]
  8. Kliknij [OK] i przebuduj projekt ;-)

(krok 6 generuje pliki .pdb, są to symbole debugowania)

juFo
źródło
40
Upewnij się, że [Informacje o debugowaniu:] jest ustawiony na [pełny] - naprawiłem to dla mnie! Mam wiele konfiguracji skonfigurowanych w moim projekcie, nowe, które dodałem, nie miały tego zestawu.
Chiefy,
1
To zadziałało dla mnie! Ale zamiast [pełny] mogłem zrobić tylko pdb
Aaron Shaver
42
Okazuje się, że byłem w kompilacji wydania. tsk.
PNDA
2
Jeśli masz mieszany projekt C ++ / C # z rodzimym startupem, upewnij się, że jest to projekt Debugowanie> Typ debugowania jest Mieszany.
Bill Hoag,
4
Musiałem też upewnić się, że Properties > Build > Optimize codeto nie jest zaznaczone .
jeffaudio,
272

Po prostu coś prostego do wypróbowania - być może już tego próbowałeś. Kliknij prawym przyciskiem myszy Solution in explorer rozwiązania, kliknij „czyste rozwiązanie”, to usunie wszystkie skompilowane i tymczasowe pliki związane z rozwiązaniem .

Przebuduj rozwiązanie i spróbuj ponownie debugować.

Miałem również problemy z wieloma punktami przerwania w jednym rozwiązaniu - niektóre skompilowane jako x86, niektóre jako x64.

Patrick
źródło
5
Jak naprawiłeś punkty przerwania w wielu projektach w jednym rozwiązaniu - niektóre skompilowane jako x86, inne jako x64?
Richard Li
3
Jeśli używasz IISExpress (lub emulatora platformy Azure), pliki w katalogu C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ root mogą nie zostać zaktualizowane, jeśli Twój plik AssemblyVersion ma wersję 1.0.0.0. Upewnij się, że jest to coś takiego jak 1.0. *, Aby nowa wersja była generowana za każdym razem, gdy budujesz projekt internetowy. Clean Solution nie usuwa folderu tymczasowych plików internetowych.
Michael Lang
1
To robi to samo, co przebuduj wszystko.
Jonathan Wood
2
@jonathan Wood - w większości się z tym zgadzam. Ale w rzadkich przypadkach Rebuild All może przynieść nieco inne wyniki - wiem, że czasami widziałem dziwne różnice. Zajrzyj tutaj na kilka interesujących dyskusji: stackoverflow.com/questions/1247457/...
Patrick
1
Dla mnie było to po prostu „Zbuduj” ... „Czyste rozwiązanie”
Dominic Isaia
238

Wyłącz opcję „Just My Code” w ustawieniach debugowania / ogólnych.

podświadomie
źródło
2
Tak, w projekcie Windows Phone 8 z niestandardową konfiguracją kompilacji, właśnie to dla mnie zrobiło.
GONeale,
2
Pracował dla mnie z Windows Phone 8.1 i VS Community 2015.
Fabiano Araujo
20
Żeby było jasne: w VS 2017 to ustawienie jest specyficzne w oknie dialogowym Narzędzia, Opcje w oknie Debugowanie, Ogólne (nie ma żadnego panelu „Debugowanie”, aby być dokładnym). Pole wyboru nazywa się „Włącz tylko mój kod”, a nie „Tylko mój kod”.
Jazimov,
1
Działa to dla mnie, jednak nie widzę wartości zmiennej, gdy hover lub shift + f9 wyświetla błąd Nie można uzyskać wartości zmiennej lokalnej lub argumentu, ponieważ nie jest ona dostępna w tym wskaźniku instrukcji, być może dlatego, że została zoptymalizowana
Naveen Kumar
1
Nadal działa w Visual Studio 2019!
Toby Caulk
148

Cross zamieszczając poprawkę od Hansa K , którą znalazłem w podobnym wątku >> TUTAJ << :

Kliknij prawym przyciskiem myszy rozwiązanie -> Właściwości

Zajrzyj do Wspólnych właściwości -> Projekt startowy

Wybierz wiele projektów startowych

wybierz Rozpocznij akcję dotyczącą projektów, które chcesz debugować.

kod jp2
źródło
7
Dotyczy to również sytuacji, w których próbujesz debugować projekt WEB będący zdalnym punktem końcowym .NET działającym na serwerze programistycznym VS i wyświetlającym „brak załadowanych symboli”.
D-Sect
1
Naprawiłem to dla mnie. Myślę, że wcześniej sombody próbowało dołączyć debugowanie do lokalnego serwera IIS zamiast wersji debugowanej IIS, której używa Visual Studio.
Dowlers,
1
Jeśli usunąłeś plik .suo, możesz utracić wybrane tutaj ustawienia rozwiązania i będziesz musiał je ponownie ustawić
Wykorzystano 1
Ponownie sprawdziłem te ustawienia po wcześniejszym pomyślnym debugowaniu i stwierdziłem, że moje projekty startowe w jakiś sposób powróciły do ​​jednego projektu startowego. Warto podwójnie sprawdzić.
Anthony De Souza
64

Wybrana odpowiedź doprowadziła mnie do rozwiązania problemu. Ale muszę zrobić jeszcze kilka rzeczy:

Nawet z wybraną opcją „Debuguj”:

wprowadź opis zdjęcia tutaj

I w projekcie Właściwości> Kompilacja:

wprowadź opis zdjęcia tutaj

Program Visual Studio nie ładował symboli do określonego projektu. W tym menu wybrałem „Menedżer konfiguracji” i zobaczyłem, że ustawienia mojego projektu internetowego były nieprawidłowe:

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Potem ustawiłem to na „Debuguj” i zaczęło generować .pdbplik. ALE muszę ręcznie skopiować PDB i DLL i umieścić w folderze, którego szukał VS (tutaj pomogła mi wybrana odpowiedź):

wprowadź opis zdjęcia tutaj

fabriciorissetto
źródło
1
Pracowałem w releasetrybie. Dzięki !!
Dipak Telangre
Kluczem było dla mnie to, że pole „Wdróż” nie było zaznaczone, dlatego pdb nie został ponownie wdrożony po zbudowaniu
Ben
43

Debug> Windows> Modules, Aby zobaczyć, co moduły były ładowane umieścić mnie we właściwym kierunku.

W moim przypadku IIS Express wydawał się ładować inną bibliotekę DLL niż tymczasowe pliki ASP.NET.

Rozwiązanie?

  1. Przeglądaj do C:\Users\<YOUR USER>\AppData\Local\Temp\Temporary ASP.NET Files\vs
  2. Usuń wszystko z tego katalogu!
James S.
źródło
To był mój problem, folder musiał być pełen uszkodzonych bibliotek DLL, które były ładowane jako preferencje.
gburton
8
To zadziałało dla mnie, z wyjątkiem mojego przypadku katalog, który musiałem wyczyścić, to C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary ASP.NET Files \ vs \
Andy
Miałem podobny problem, w którym miałem już zainstalowaną tę aplikację i ładowanie tej biblioteki DLL zamiast tej z mojego projektu bez powiązanego pliku PDB. Po odinstalowaniu starej aplikacji problem został dla mnie rozwiązany. Dzięki!
Lenny K
42

Byłem w stanie naprawić błąd, po prostu ustawiając opcję w opcji „Dołącz do procesu” na opcję „Automatycznie określ typ kodu do debugowania”, jak pokazano na załączonym zrzucie ekranu.

Po prostu wykonaj poniższe czynności:

  • Przejdź do Debuguj z paska menu
  • Kliknij opcję Dołącz do procesu
  • W pobliżu opcji Dołącz do kliknij przycisk Wybierz
  • Pojawi się okno Wybierz kod
  • Teraz wybierz opcję Automatycznie określ typ kodu do debugowania i kliknij przycisk OK.

Naprawiono błąd debugowania

theITvideos
źródło
10
Dla innych, którzy wypróbowali wszystko na tej stronie, naprawiłem problem, przechodząc na kod „Zarządzany (v4.5, v4.0)”!
stevekrzysiak
Przejście na „Managed (v4.5, v4.0)” naprawiło to również dla mnie podczas debugowania aplikacji DNN ASP.Net. Dzięki!
Mmm,
Przejście z „Automatycznie określ typ kodu do debugowania” na „Zarządzane (v4.6, v4.5, v4.0)” działało dla mnie. Mam rozwiązanie z bibliotekami 2 klas, jedna jest dostępna dla COM, obie są skierowane do frameworka 4.6.1.
Jorb,
Wybrałem złą opcję („.NET Core” zamiast „Managed v4.6”). Wybrałem „Automatycznie określ ...” i zadziałało! Początkowo znalazłem to rozwiązanie na blogu blog.simontest.net/… .
Evgeni Nabokov
41

Czasami, mimo że daje ci ten błąd, breakpointnadal zostaje trafiony, więc po prostu zignoruj ​​błąd. Dzieje się to dość często w ViewsO mocy MVC web app.

Serj Sagan
źródło
7
Powinno to być rzeczywiście ocenione gdzieś na szczyt. Spędziłem dużo czasu, robiąc wszystkie powyższe odpowiedzi, ale punkt przerwania faktycznie zostałby trafiony. Po prostu sprawdź :) To była aplikacja komputerowa WPF.
Bartosz
4
Wygląda na to, że aspx jest kompilowany na żądanie, dlatego informacje debugowania są dostępne tylko wtedy, gdy potrzebna jest strona aspx
aeroson
Również na UnitTesting - musisz poczekać kilka sekund, a następnie zostanie trafiony.
David Refaeli
Myślę, że natknąłem się na komentarz @aeroson. Jedna strona załadowała punkty przerwania, inna nie. Próbowałem różnych rzeczy z odpowiedzi tutaj, a następnie odświeżyłem tę stronę i załadowano punkty przerwania.
goodeye,
dzięki ... przekopałem się przez pół godziny i właśnie zdałem sobie sprawę, że punkt przerwania wciąż jest uderzany ...
Kyle Huang
39

Sprawdź, czy brakuje pliku .pbd w folderze bin / Debug. Jeśli tak, przejdź do „Właściwości” swojego projektu, wybierz „Kompiluj”, a następnie „Zaawansowane” u dołu. Wybierz „pełny” w „Informacje debugowania” w nowym oknie, które się pojawiło. To był mój problem i rozwiązałem go dla mnie.

Pokazuje, gdzie znaleźć ustawienie

Arne H. Bitubekk
źródło
Sugerowałbym, aby każdy odwiedził tę stronę, aby upewnić się, że pdb jest generowany, ponieważ był to dla mnie problem.
EatATaco
Dzięki! Wystarczyło „tylko pdb” (zamiast pełnego). Ponadto „Zaawansowane” to przycisk na dole kompilacji.
Greg Little
gdzie powinny być generowane pdbs?
ylka
1
Dzięki, naprawiłem to dla mnie po dokonaniu nowych transformacji Web.config i usunięciu domyślnych konfiguracji (takich jak Web.Debug.config), które zapewnia VS 2017.
Ken Palmer
1
Próbowałem wiele innych opcji (zmarnowane prawie 2 godziny) Ta „pełna” opcja rozwiązuje mój problem. Dzięki!
SoftSan
29

W moim przypadku „Optymalizacja kodu” została sprawdzona we właściwościach mojego projektu. To spowodowało, że VS zobaczył mój zestaw jako „nie mój kod”, a to z kolei nie załadowało dla niego symboli.

Rozwiązaniem było odznaczenie tego. Lokalizacja pola wyboru Optymalizuj kod

Sandra
źródło
2
To też był mój problem i przeszedłem wszystkie powyższe rozwiązania jeden po drugim, nic nie działało.
antikbd
Odznałem tę opcję, czyste rozwiązanie, przebudowane rozwiązanie itp. VS zawsze uważał moduł za „Zoptymalizowany”. Jedynym sposobem, w jaki wymusiłem VS, aby zaktualizował informacje debugowania, było zwiększenie wersji modułu.
alphanoch
Jedyne rozwiązanie, które działa dla mnie, # dla ciebie (# = ++++), ale mogę głosować tylko raz
Luis Lopez
27

Wystarczy sprawdzić, czy Twoje rozwiązanie jest w trybie zwolnienia.

Tino Jose Thannippara
źródło
1
znalezienie tego problemu zajęło prawie 4 godziny. dzięki
Null Pointer
23

Spróbuj uruchomić Visual Studio jako administrator w systemie Windows.

Andy
źródło
1
W końcu musiałem uruchomić msvsmon jako administrator na zdalnym komputerze.
Bill Hoag,
To nie jest rozwiązanie, za którym ludzie powinni podążać. Jeśli to rozwiąże problem, powinieneś skupić się na tym, dlaczego potrzebujesz uprawnień administratora, aby VS mógł odczytać zawartość pliku .pdb twojego projektu.
Jazimov,
@Jazimov Nie zgadzam się. Podczas gdy chciałbym poświęcić czas na badanie tego problemu, w moim przypadku rozwiązało to mój problem i pozwoliło mi kontynuować pracę, tak jak na inne osoby. Jeśli chcesz przyjrzeć się temu i poprawić tę odpowiedź, nie krępuj się, po to jest.
Andy,
Żeby było jasne: rozumiem, że naprawiłem twój problem z Visual Studio, nie o to mi chodziło. Jestem zaprzeczyły rekomendację że inni akceptują działa IDE jak w roztworze zamiast prostego w roztworze. Jeśli uruchomienie IDE jako administrator rozwiązuje problem, informacje te powinny zostać wykorzystane do rozwiązania rzeczywistej przyczyny źródłowej, aby IDE nie wymagało uprawnień administratora w celu poprawnego działania.
Jazimov
21

W moim przypadku próbuję debugować w trybie udostępniania. Raz zmienię go w tryb debugowania. To działa

Adithya Sai
źródło
15

Musisz włączyć opcję „Generuj informacje debugowania” w ustawieniach kompilatora

DS.
źródło
1
Gdzie to powinno być?
MushyPeas
10
Jest taki sam, jak odpowiedź juFo - Projekt> Właściwości> Kompilacja> Zaawansowane> Informacje debugowania> Pełna (lub tylko pdb)
Jeremy Thompson
Posłuchaj Jeremy Thompsen. Naprawiłem problem.
Thorkil Værge
12

->Opcje debugowania ->Ogólne ->Odznacz znak „ Enable Just My Code

To zadziałało dla mnie.

abdallah mahmoud
źródło
1
Wydaje się, że może to być ustawienie domyślne, które warto sprawdzić, czy aktualizacja VS do nowszej wersji (jak mi się zdarzyło).
Agamemnon
10

Znaleźliśmy przyczynę naszego problemu. Ten kod używał atrybutu „CodeBehind” w dyrektywie strony pliku .aspx zamiast atrybutu „CodeFile” (ASP.NET 2.0 i nowsze). Po dniach desperacji proste wyszukiwanie i zamiana rozwiązały problem.

cjo30080
źródło
10

Opcja „Rozpocznij debugowanie, debugowanie + moduły Windows +” nie istnieje w Microsoft Visual Studio Express 2013 edycja.

Odznaczenie „Użyj zarządzanego trybu zgodności” w opcjach narzędzi. Debugowanie to rozwiązuje.

Andrus
źródło
10

Sprawdź Solution Configurationlistę rozwijaną. Upewnij się, że wybierasz Debug, a nie Release.

zs2020
źródło
Dziękuję @ zs2020
Shakeel Hussain Mir
9

Próbowałem wszystkiego wymienionego powyżej, ale nic nie działało. [Wyczyść rozwiązanie i sprawdź pliki PDB itp.]

Nawet opublikowanie tego samego rozwiązania nie rozwiązało problemu.

Potem wróciłem do tego, co zwykle robię, aby rozwiązać (oszukać tego upartego programu Visual Studio)

Wszystko, co zrobiłem, to umyślna zmiana kodu i opublikowanie rozwiązania. Potem cofnąłem zmianę i opublikowałem ponownie.

Voila [pliki PDB pozbywają się złych duchów] .. Nie jest to sprytna rozdzielczość, ale to zadziałało ..: - |

Mahesh
źródło
7

Tylko aplikacje internetowe (IIS Express):

  • Kliknij prawym przyciskiem myszy IIS Express Tray i zamknij IIS.
  • Czyste rozwiązanie

Taca IIS

Christian Gollhardt
źródło
Próbowałem wielu innych sugestii w innych odpowiedziach, z których wiele pomogło mi w przeszłości, ale dziś ta pomogła. W moim przypadku mam wiele gałęzi i myślę, że IIS Express w jakiś sposób utknął na innej gałęzi i nie odświeżał się przy gałęzi, którą próbowałem debugować, pomimo moich licznych prób czyszczenia i odbudowy.
Chris H
6

Żadna z tych odpowiedzi nie rozwiązała mojego problemu. Próbowałem innej rzeczy opartej na fakcie, że projekt z zatrzymaniem w rzeczywistości nie był załadowanym projektem. Znalazłem, gdy Hans Passant napisał, że plik .dll, w którym chcę zatrzymać debugger, oraz powiązane pliki .pdb zostały skopiowane w pobliżu pliku .exe. Te pliki miały starszą datę, więc pomyślałem, że nie zostały zaktualizowane w czasie wykonywania. Ręcznie je usunąłem, Visual Studio utworzy kolejną parę ORAZ umieściłem tę nową parę w pobliżu .exe. Teraz breakpoins działa!

Być może program Visual Studio nie może skopiować i zastąpić istniejących plików (.dll i .pdb) w pobliżu pliku .exe, ponieważ istnieją inne. Więc jeśli usunę ręcznie, VS może utworzyć nowy w pobliżu .exe.

Myślę, że kolejne zmiany (kontrole i tak dalej - z innych odpowiedzi) spowodowały coś, a Visual Studio skopiowało i zastąpiło dll i pdb z folderu projektu do folderu w pobliżu exe, więc było to rozwiązanie.

Myślę, że główną przyczyną problemu jest to, że Visual Studio używa innego pliku w środowisku wykonawczym, bez pliku z projektu, z zatrzymaniem.

Może ta odpowiedź pomoże komuś!

Tratak
źródło
6

Należy to sprawdzić, aby było jasne: upewnij się, że konfiguracja jest ustawiona na „Debuguj”, a nie „Zwolnij”. Możesz debugować projekt startowy w trybie „Release”, ale nie odwołuje się do biblioteki klas, do której się odwołuje.

Sai Chakradhar Sana
źródło
6

Właściwości projektu (następnie wybierz konfigurację kompilacji)> Karta kompilacji> Zaawansowane ...> Informacje debugowania (menu rozwijane)

Ustaw na „wszystkie” lub „tylko pdb”, a następnie przebuduj

Sinaesthetic
źródło
Zrobiłem pdb_only, również wyczyściłem i uruchomiłem ponownie przeglądarkę
Jason
6

Zamiast robić te wszystkie rzeczy po prostu

Zamknij i otwórz ponownie

rozwiązanie to naprawi problem

kselva
źródło
Pracowałem dla mnie w Microsoft Visual Studio 2013 w: Plik> Zamknij rozwiązanie, a następnie Plik> Otwórz rozwiązanie (powinien być wstępnie załadowany z tym samym folderem, w którym był). Punkty przerwania natychmiast zmieniły kolor z żółtej flagi na okrągłą czerwoną. Więc dziękuję.
Zargold,
Geniusz OMG! Dzięki!!!
AresDev
6

Miałem podobny problem i wykonałem następujące czynności: Debugowanie => Opcje => Ogólne => Usuń zaznaczenie opcji „Włącz tylko mój kod” To działało dla mnie ..

Muhamed Krasniqi
źródło
to też działa dla mnie
mohammed elshoraky
6

Zajęło mi to chwilę wypróbowanie innych opcji powyżej iz jakiegoś dziwnego powodu debugowanie przestało działać.

Narzędzie -> Opcje -> Debugowanie -> Ogólne -> (odznacz) Opcja „Wymagaj plików źródłowych dokładnie pasujących do oryginalnej wersji”

tfa
źródło
6
  1. Czyste rozwiązanie i przebuduj
  2. Sprawdź, czy konfiguracja jest ustawiona na Debugowanie
  3. Upewnij się, że plik PDB znajduje się w folderze debugowania
  4. W menu Debugowanie kliknij Włącz wszystkie punkty przerwania
Bimal
źródło
6

Sprawdź, czy następujące dwa ustawienia są takie same w Visual Studio:

Kliknij prawym przyciskiem myszy projekt testowy, przejdź do Właściwości, zakładki Kompilacja i spójrz na Cel platformy

Moje są ustawione na „Any CPU”, więc x64

wprowadź opis zdjęcia tutaj

Na pasku menu głównego przejdź do Test, Ustawienia testu, Domyślna architektura procesora

Mój został ustawiony na X86

wprowadź opis zdjęcia tutaj

Zmiana tego ustawienia na X64 w celu dopasowania do powyższego ustawienia spowodowała, że ​​wbudowane menu programu Visual Studio „Debuguj test (y)” zadziałało i uderzyło w punkty przerwania, które były wcześniej ignorowane komunikatem „Punkt przerwania nie zostanie obecnie trafiony. Dla tego dokumentu nie załadowano żadnych symboli ”.

Aktualizacja:

W przypadku Visual Studio 2019 menu zostały nieco zmienione: wprowadź opis zdjęcia tutaj

Mike
źródło
5

Wiem, że jestem spóźniony o wiele lat, ale pomyślałem, że zrobiłem coś złego i wykonałem powyższe kroki, a potem zdałem sobie sprawę, że przez pomyłkę ustawiłem konfigurację rozwiązania na „Release” :)

Neil Walker
źródło
1
Czy mogę głosować 10 000 razy? Najgorsze z tego wszystkiego jest to, że myślę, że szukałem tego w Google już 10 razy, i za każdym razem jest ten sam głupi błąd. Być może Microsoft mógłby podpowiedzieć użytkownikowi?
tfrascaroli,