Start, pauză, și a opri debugger vizual de studio, precum și navigați la debugger

Se suspendă executarea de cod prin punctele de întrerupere sau de a rupe toate

Atunci când depanare o aplicație folosind aplicația Visual Studio debugger sau efectuate, sau să fie în modul pauză.

Debugger suspendă executarea cererii atunci când se ajunge la un punct de întrerupere, sau o excepție este aruncată. De asemenea, puteți opri manual executarea în orice moment.

Puteți configura puncte de oprire pentru a suspenda executarea pe baza mai multor condiții. Pentru mai multe informații, consultați., Consultați Utilizarea breakpoints și urme de puncte. Această secțiune descrie cele două modalități principale de a introduce codul.

Set breakpoints în codul

Puncte de întrerupere în Visual Studio oferă o gamă largă de caracteristici suplimentare, cum ar fi puncte de întrerupere condiționate și urmărire. Pentru mai multe informații, consultați., Consultați Utilizarea breakpoints și urme de puncte.

suspenda manual executarea de cod

Pentru a trece la următoarea linie de cod disponibile în aplicația pentru a efectua, selectați Debugging. End toate (tastatură: Ctrl + Alt + Break).

Atunci când depanare cu opțiunea „Doar codul meu“, ar trebui să fie efectuate în următoarea linie de cod în proiect. Pentru mai multe informații, consultați. Secțiunea Restricționarea pas cu pas la doar codul meu.

Când depanarea programelor multiple Se suspendă toate sau implicit breakpoint afectează performanța tuturor depanate. Cm. Partiție Schimbarea comportamentului pauză de procese multiple în această secțiune.

Dacă efectuați cod run-time, fără o sursă sau un simbol de fișier corespunzător (.pdf)), debugger afișează o pagină nu se găsește fișierele sursă nu poate fi găsit sau simboluri. care va ajuta pentru a găsi fișierele necesare. Pentru mai multe informații, consultați. În fișierele secțiunea Căutare simboluri (.pdb), codul sursă și fișierele binare.

Dacă sunteți în imposibilitatea de a accesa fișierele de suport, puteți depana încă fereastră instrucțiuni de instalare Dezasamblarea "

Pas cu pas sau de la codul

Una dintre procedurile cele mai comune de depanare este pas cu pas. Când pas cu pas prin codul este executat o linie la un moment dat. Când opriți execuția, cum ar fi executați un depanator la punct de întrerupere, puteți utiliza Debuger comanda meniului 3 pas cu pas prin codul:

La intrarea în această linie, starea de procesare ca un pas și consecințele, în timp ce altele (în acest exemplu, condiția).

Pornește în locația sau funcția specificată

Uneori poate fi necesar pentru a efectua într-o locație specificată în codul, apoi se va opri executia. Dacă există un punct de întrerupere într-un loc în care doriți să suspende executarea, selectați Debug. Start Debugging. dacă nu executați depanare sau Debug. Continuă. În ambele cazuri, (F5), o combinație de taste. Debugger se oprește la punctul de întrerupere în următorul cod este executat. Selectați Debug. Continuă. până când ajunge la punctul de întrerupere pe care doriți. Cm. Partition Set breakpoints în codul din această secțiune.

Start la poziția cursorului

Urmați pe funcții în stiva de apel

În stiva de apel, selectați funcția și faceți clic pe Executare în poziția curentă din meniul contextual.

Efectuați o funcție definită de numele

Puteți instrui debugger la executarea cererii până la momentul până la o anumită funcție. Puteți seta numele sau selectați-l din stiva de apel.

Definiți un nume de funcție, selectați Debugging. Crearea unui punct de întrerupere. Întrerupe în funcție. și apoi pentru a introduce numele funcției și alte informații de identificare.

Start, pauză, și a opri debugger vizual de studio, precum și navigați la debugger

În cazul în care o funcție este supraîncărcat sau la plural în spațiul de nume, puteți selecta caracteristicile care pot fi găsite în caseta de dialog Selectați Breakpoints.

Start, pauză, și a opri debugger vizual de studio, precum și navigați la debugger

Adăugați următorul operator pentru a efectua

Dupa acest lucru va duce la funcționarea defectuoasă în debugger, puteți muta punctul de operatorul de atribuire următorul cod pentru a executa. Săgeata galbenă de pe marginea textului original sau în „Dezasamblarea“ ia act de locația curentă a operatorului, care trebuie efectuată după cum urmează. Prin mutarea parte a codului de această săgeată poate sări sau du-te înapoi la linia făcut anterior. Acesta poate fi utilizat în astfel de situații apar ca o secțiune de cod trecere care conține o eroare cunoscută.

Start, pauză, și a opri debugger vizual de studio, precum și navigați la debugger

Instalarea operatorului de lângă efectua, utilizați una dintre următoarele proceduri:

În câmpul Source, glisați săgeata galbenă în locația în care doriți să solicite următoarea declarație într-un fișier sursă

Sursa câmpului, plasați cursorul pe linia pe care doriți să o efectuați, apoi pe Setați următoarea declarație din meniul contextual.

În fereastra de demontare, plasați cursorul în manualul de instalare, care este necesar pentru a efectua, apoi pe Setați următoarea declarație din meniul contextual.

Setarea următoarea declarație va provoca instrucțiunile de program contra merge direct la o nouă locație. Este necesar să se utilizeze această comandă cu precauție.

Instrucțiuni între punctele vechi și noi nu sunt îndeplinite.

Când vă mutați înapoi la punctul de punere în aplicare, instrucțiuni intermediare nu sunt anulate.

Mutarea de lângă operator sau o altă regiune funcție provoacă în mod normal, deteriorarea stiva de apel, provocând o eroare de execuție sau de excepție. Când încercați să mutați următoarea declarație într-o zonă diferită, debugger se deschide o casetă de dialog cu un avertisment și oferă o oportunitate de a anula operația. În Visual Basic, nu puteți muta următoarea declarație într-o zonă sau o funcție diferită.

În propria sa C, C - ++, în cazul în care există un run-time controale includ, instalați următorul operatorul poate ridica o excepție delegat atunci când se realizează la sfârșitul metodei.

La editarea și se continuă activată prin setarea următoarea declarație eșuează în cazul în care modificările stabilite, editează, și nu poate continua comparația imediat. De exemplu, acest lucru poate să apară atunci când se fac modificări în cadrul blocului de captură. Atunci când se întâmplă acest lucru. Un mesaj de eroare care indică faptul că operațiunea nu este acceptată.

În cod gestionat, nu puteți muta următoarea declarație în următoarele cazuri:

Declarația următoare este într-o metodă diferită de metoda operatorului curent.

Debugging a fost lansat prin JIT-depanare.

Golește stiva de apel.

O excepție este aruncată sau System.StackOverflowException System.Threading.ThreadAbortException.

Nu instalați următoarea declarație în cazul în care aplicația se execută. Pentru a seta declarația următoare, debugger trebuie să fie în modul pauză.

Limitati setarea de viteză pentru modul în „Just My Code“.

Uneori, în timpul de depanare poate fi necesară pentru a afișa numai codul creat de unul singur, și sări peste alt cod, cum ar fi apelurile de sistem. Pentru a face acest lucru, este posibil să se modul de depanare „Doar codul meu“. În codul „Doar codul meu“ nu este scris de către utilizator, ascunse și nu apare în ferestrele depanator. Când pas cu pas prin execută depanatorul orice cod care nu este scris de către utilizator, dar nu se oprește aici.

Pentru a activa sau depanare dezactivare „Doar codul meu“, selectați Debugging. Parametrii și setări. Debug pe pagina generală. Scanează și elimină doar codul meu Activare.

Aceasta face codul de utilizator din codul fără modul utilizator „Just My Code“ vedea că fișierele de simboluri (PPB) și program de optimizare.

În depanare standard de optimizare construiește dezactivate, iar simbolurile de depanare sunt generate pentru toate modulele. Când începe depanarea construirea acestor module considerate cod de utilizator. Dar funcția bibliotecii, care este optimizat și nu conține simboluri de depanare nu sunt luate în considerare codul de utilizator. În „Doar Codul meu“ Executarea nu se oprește la punctele de întrerupere în codul de bibliotecă, care nu este de obicei interesat de tine în termeni de depanare. În „punctul de spargere“, acestea vor apărea cu o „punct de întrerupere cu handicap“.

Trei atribute afecta ceea ce debugger considera „sursa mea“: spune DebuggerNonUserCodeAttribute debugger că codul utilizat nu este „codul meu.“ DebuggerHiddenAttribute ascunde codul din debugger, chiar dacă modul de „Just My Code“ este activat. DebuggerStepThroughAttribute indică debugger pentru a executa cod pas cu pas, la care se aplică, nu pentru a efectua pas în acest cod.

Când „Doar codul meu“ este activat, puteți alege Anulare toate din meniul Debug și a opri rulează într-un loc unde nu este codul meu pentru a afișa. În acest caz, codul nu apare. În plus, atunci când alegeți Step. acesta va transfera utilizatorul la următoarea linie de cod personalizat.

instrucțiune de întrerupere software, cum ar fi Visual Basic declarații Stop. tratate diferit. Depanatorul se oprește întotdeauna aceste instrucțiuni, chiar dacă modul este activat, „Doar codul meu“. În acest caz, codul nu este scris de către utilizator, este afișat și nu este ascuns, dar pas cu pas va continua să traducă utilizatorul la următoarea linie de cod personalizat.

Modul „Doar Codul meu“ nu este acceptată pentru proiectele de dispozitiv.