Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk egy részletes útmutatóban ismerteti a Visual Studio hibakeresőjének funkcióit. Amikor hibakeresést végez az alkalmazásán , az általában azt jelenti, hogy az alkalmazást csatolt hibakeresővel futtatja. Ha ezt a feladatot végzi, a hibakereső számos módot kínál arra, hogy lássa, mit csinál a kód a futtatás során. Végiglépkedhet a kódon, és megtekintheti a változókban tárolt értékeket. Beállíthat órákat változókon, hogy lássa, mikor változnak az értékek. A kód végrehajtási útvonalát megvizsgálva megállapíthatja, hogy fut-e egy kódág.
Ha ez a cikk az első alkalom, hogy megpróbál kódot hibakeresésre használni, olvassa el az abszolút kezdőknek szóló Hibakeresés című témakört. Ha magasabb szintű nézetet szeretne a hibakereső funkcióiról, tekintse meg a Visual Studio hibakeresőjének áttekintését.
Bár a bemutató alkalmazás C#, a funkciók többsége a C++, a Visual Basic, az F#, a Python, a JavaScript és a Visual Studio által támogatott egyéb nyelvekre is alkalmazható. Az F# nem támogatja a szerkesztést és a folytatást. Az F# és a JavaScript nem támogatja az Automatikusak ablakot. A képernyőképek C#-ban találhatók.
Ebben az oktatóanyagban a következőket fogja megtanulni:
- Indítsa el a hibakeresőt, és nyomja le a töréspontokat
- A parancsok tanulása a kód hibakeresőben való végiglépéséhez
- Változók vizsgálata adattippekben és hibakereső ablakokban
- A hívásverem vizsgálata
Előfeltételek
A Visual Studiónak telepítve kell lennie a .NET asztali fejlesztési munkaállomásán.
Ha telepítenie kell a Visual Studiót, töltse le ingyenesen a Visual Studio letöltési webhelyére.
Ha már rendelkezik Visual Studióval, de a .NET asztali fejlesztési számítási feladat nincs telepítve, lépjen az Eszközök lekérése>eszközök és szolgáltatások elemre... A Visual Studio Installerben válassza a .NET asztali fejlesztési számítási feladatát, majd a Módosítás lehetőséget.
Projekt létrehozása
Először hozzon létre egy C#/.NET-konzolalkalmazás-projektet. A projektsablon tartalmazza az összes szükséges fájlt, mielőtt bármit hozzáadna.
Nyissa meg a Visual Studiót. Ha a kezdőablak nincs megnyitva, válassza Fájl>Kezdőablaklehetőséget.
A kezdési ablakban válassza Új projekt létrehozásalehetőséget.
A Új projekt létrehozása ablakban írja be konzol a keresőmezőbe. Ezután válassza C# a Nyelv listából, majd válassza Windows a Platform listából.
A nyelvi és platformszűrők alkalmazása után válassza a Konzolalkalmazás sablont, majd válassza a Továbblehetőséget.
Jegyzet
Ha nem látja a konzolalkalmazás sablont, az Új projekt létrehozása ablakból telepítheti. A Nem találja, amit keres? üzenetben válassza a További eszközök és szolgáltatások telepítése hivatkozást. Ezután a Visual Studio Installerben válassza ki a .NET asztali fejlesztési számítási feladatot.
Az Új projekt konfigurálása ablakban írja be GetStartedDebugging a Projekt neve mezőbe. Ezután válassza Továbblehetőséget.
A További információ ablakban győződjön meg arról, hogy a .NET 10.0 ki van jelölve a Keretrendszer legördülő menüben, majd válassza a Létrehozás lehetőséget.
Nyissa meg a Visual Studiót. Ha a kezdőablak nincs megnyitva, válassza Fájl>Kezdőablaklehetőséget.
A kezdési ablakban válassza Új projekt létrehozásalehetőséget.
A Új projekt létrehozása ablakban írja be konzol a keresőmezőbe. Ezután válassza C# a Nyelv listából, majd válassza Windows a Platform listából.
A nyelvi és platformszűrők alkalmazása után válassza a Konzolalkalmazás sablont, majd válassza a Továbblehetőséget.
Jegyzet
Ha nem látja a konzolalkalmazás sablont, az Új projekt létrehozása ablakból telepítheti. A Nem találja, amit keres? üzenetben válassza a További eszközök és szolgáltatások telepítése hivatkozást. Ezután a Visual Studio Installerben válassza ki a .NET asztali fejlesztési számítási feladatot.
Az Új projekt konfigurálása ablakban írja be GetStartedDebugging a Projekt neve mezőbe. Ezután válassza Továbblehetőséget.
A További információk ablakban győződjön meg arról, hogy .NET 8.0 van kiválasztva a Keretrendszer legördülő menüben, majd válassza a létrehozása lehetőséget.
A Visual Studio megnyitja az új projektet.
Az alkalmazás létrehozása
A Program.cscserélje le az összes alapértelmezett kódot a következő kódra:
using System;
class ArrayExample
{
static void Main()
{
char[] letters = { 'f', 'r', 'e', 'd', ' ', 's', 'm', 'i', 't', 'h'};
string name = "";
int[] a = new int[10];
for (int i = 0; i < letters.Length; i++)
{
name += letters[i];
a[i] = i + 1;
SendMessage(name, a[i]);
}
Console.ReadKey();
}
static void SendMessage(string name, int msg)
{
Console.WriteLine("Hello, " + name + "! Count to " + msg);
}
}
Indítsa el a hibakeresőt!
Ez a cikk többnyire billentyűparancsokat használ. A hibakereső parancsok gyors végrehajtásának módja. Az egyenértékű parancsok, például az eszköztár vagy a menüparancsok is elérhetők.
A hibakereső elindításához válassza F5lehetőséget, vagy válassza a Hibakeresési cél gombot a Standard eszköztáron, vagy válassza a Hibakeresés indítása gombot a hibakeresési eszköztáron, vagy válassza Hibakeresés>Hibakeresés indítása lehetőséget a menüsávon.
F5 elindítja az alkalmazást az alkalmazás folyamatához csatolt hibakeresővel. A hibakeresés megkezdése óta az alkalmazás a befejezésig fut, és megjelenik a konzol kimenete.
Hello, f! Count to 1 Hello, fr! Count to 2 Hello, fre! Count to 3 Hello, fred! Count to 4 Hello, fred ! Count to 5 Hello, fred s! Count to 6 Hello, fred sm! Count to 7 Hello, fred smi! Count to 8 Hello, fred smit! Count to 9 Hello, fred smith! Count to 10A hibakereső leállításához válassza a Shift+F5lehetőséget, vagy válassza a Hibakeresés leállítása gombot a hibakeresési eszköztáron, vagy válassza a Hibakeresés>A hibakeresés leállítása lehetőséget a menüsávon.
A konzolablakban válassza ki a kívánt kulcsot a konzolablak bezárásához.
Töréspont beállítása és a hibakereső indítása
A
forfüggvényMainhurokjában állítson be töréspontot a következő kódsor bal margójára kattintva:name += letters[i];Megjelenik egy piros kör, ahol a töréspontot állítja be.
A töréspontok a megbízható hibakeresés alapvető jellemzői. Olyan töréspontokat állíthat be, ahol a Visual Studio szünetelteti a futó kódot. Megtekintheti a változók értékeit vagy a memória viselkedését, vagy megtudhatja, hogy a kód egy ága fut-e.
A hibakeresés megkezdéséhez válassza F5, vagy válassza a Hibakeresési cél gombot a Standard eszköztáron, vagy válassza a Hibakeresés indítása gombot a hibakeresési eszköztáron, vagy válassza Hibakeresés>Hibakeresés indítása lehetőséget a menüsávon. Az alkalmazás elindul, és a hibakereső a töréspont beállításához megadott kódsorra fut.
A sárga nyíl arra az utasításra mutat, amelynél a hibakereső megállt. Az alkalmazás végrehajtása ugyanabban a pillanatban szünetel, és az utasítás még nem lett végrehajtva.
Ha az alkalmazás nem fut, F5 elindítja a hibakeresőt, amely addig futtatja az alkalmazást, amíg el nem éri az első töréspontot. Ha az alkalmazás szüneteltetve van egy töréspontnál, akkor az F5 addig futtatja az alkalmazást, amíg el nem éri a következő töréspontot.
A töréspontok akkor hasznosak, ha ismeri a kódnak azt a sorát vagy szakaszát, amelyet részletesen meg szeretne vizsgálni. A különböző típusú töréspontokról, például a feltételes töréspontokról további információt a megfelelő törésponttípus használata című témakörben talál.
Navigálás a kódban és adatok vizsgálata adattippek használatával
Amíg a kódvégrehajtás szüneteltetve van a
name += letters[i]utasításban, mutasson alettersváltozóra a tömbméretet és az elemtípust megjelenítő adattipp megjelenítéséhez,char[10].Jegyzet
A hibakereső egyik legkedvesebb funkciója, hogy képes megvizsgálni egy változót. Amikor hibakeresést végez, gyakran próbálja kideríteni, hogy a változók rendelkeznek-e az adott időpontban várt értékekkel. Az adattippek megtekintése jó módszer ennek ellenőrzésére.
Bontsa ki a
lettersváltozót az összes tömbelem és azok értékeinek megtekintéséhez.
Vigye az egérmutatót a
nameváltozóra az aktuális érték megtekintéséhez, amely egy üres sztring.Ha a hibakeresőt a következő utasításra szeretné előléptetni, válassza F10lehetőséget, vagy válassza a Lépésátlépés gombot a hibakeresési eszköztáron, vagy válassza Hibakeresés>Lépésátlépés lehetőséget a menüsávon. Az F10 kétszeri kiválasztásával lépkedjen át a
SendMessagemetódushíváson.F10 anélkül fejleszti a hibakeresőt, hogy belelép a függvénybe vagy a metódusokba, bár a kód továbbra is fut. Ezzel a módszerrel kihagyta a metódus kódjának
SendMessagehibakeresését, ami jelenleg nem lényeges.Ha néhányszor át szeretné haladni a
forcikluson, válassza F10 többször. A ciklus minden egyes iterációjánál álljon meg a töréspontnál, majd vigye az egeret anameváltozó fölé, hogy ellenőrizze az adattippben az értékét.
A változó értéke a
forciklus minden iterációjával változik, és af, majdfr, majdfrestb. értékeket jeleníti meg. Ha gyorsabban szeretné előrevinni a hibakeresőt a cikluson, válassza a F5 lehetőséget, amely a következő utasítás végrehajtása helyett a töréspontig ugrik.Amíg a kódvégrehajtás szüneteltetve van a
formetódusMainciklusában, válassza F11, vagy válassza a Lépés gombot a Hibakeresés eszköztáron, vagy válassza Hibakeresés>Lépés a menüsávról, amíg el nem éri aSendMessagemetódushívást.A hibakeresőt a következő kódsornál kell szüneteltetni:
SendMessage(name, a[i]);A
SendMessagemetódusba való lépéshez válassza újra F11.A sárga mutató a
SendMessagemetódusba lép.
F11 segítségével részletesebben megvizsgálhatja a kód végrehajtási folyamatát. Lépjen be egy metódusba egy metódushívás során az F11lehetőség kiválasztásával. Alapértelmezés szerint a hibakereső kihagyja a nem használható metódusok használatát. A nemfelhasználói kód hibakereséséről a Just My Codecímű témakörben olvashat.
Miután befejezte a
SendMessagemetódus hibakeresését, készen áll arra, hogy visszatérjen aforhurokához amainmetódusban.A
SendMessagemetódus elhagyásához válassza a Shift+F11lehetőséget, vagy válassza a Kilépés gombot a Hibakeresés eszköztáron, vagy válassza a Hibakeresés>Kilépés lehetőséget a menüsávról.Kilépés folytatja az alkalmazás végrehajtását, és a hibakeresőt addig lépteti előre, amíg az aktuális metódus vagy függvény vissza nem tér.
A sárga mutatót újra látja a
formetódusMainhurokjában, aSendMessagemetódushívásnál van szüneteltetve. További információ a kódban való különböző mozgási módokról: Kód navigáció a hibakeresőben.
Navigálás a kódban a Futtatás kattintásra funkcióval
Válassza F5 lehetőséget a töréspontra való továbblépéshez.
A kódszerkesztőben mutasson a
Console.WriteLinemetódushívásra aSendMessagemetódusban, amíg meg nem jelenik a Futtatás kattintásra gomb. A gomb eszköztippjében a "Végrehajtás futtatása ide" felirat látható.
Válassza a Futtatás a gombra kattintáshoz. Másik lehetőségként a kurzorral a
Console.WriteLineutasításban válassza a Ctrl+F10lehetőséget. Vagy kattintson a jobb gombbal aConsole.WriteLinemetódushívásra, és válassza a Futtatás a kurzorig lehetőséget a helyi menüből.A hibakereső továbblép a
Console.WriteLinefüggvényhívásra.A Kattintásra futtatás gomb használata hasonlít egy ideiglenes töréspont beállítására. Ez a megközelítés kéznél van a gyors navigáláshoz egy megnyitott fájlban lévő applikációs kód látható régióján belül.
Az alkalmazás gyors újraindítása
Ha újra szeretné futtatni az alkalmazást a hibakeresőben, válassza a Ctrl+Shift+F5, vagy válassza a Újraindítás gombot a Hibakeresés eszköztáron, vagy válassza a Hibakeresés>Újraindítás lehetőséget a menüsávon.
Újraindítás leállítja a hibakeresőt, majd egy lépésben újraindítja. Amikor a hibakereső újraindul, az első töréspontig fut, amelyet korábban a for hurokban állított be, majd pedig szünetelni kezd.
Változók vizsgálata az Automatikus és helyi beállítások ablakokkal
Az Automatikus és Helyi ablak változó értékeket jelenít meg a hibakeresés során. Az ablakok csak hibakeresési munkamenet során érhetők el. Az Automatikus ablakban a hibakereső aktuális vonalán és az előző sorban használt változók láthatók. A Helyiek ablakban a helyi hatókörben definiált változók láthatók, amelyek általában az aktuális függvény vagy metódus.
Amíg a hibakereső szüneteltetve van, tekintse meg az Automatikus ablakot a kódszerkesztő alján.
Ha az Automatikus ablak be van zárva, válassza a Ctrl+D, A, vagy válassza Hibakeresés>Windows>Automatikus lehetőséget a menüsávon.
Amíg a hibakeresés szünetel, tekintse meg a Helyi változók ablakot az Automatikus változók ablak melletti fülön.
Ha a Helyiek ablak be van zárva, válassza a Ctrl+D, L, vagy válassza Hibakeresés>Windows>Helyieklehetőséget.
A Helyiek ablakban bontsa ki a
lettersváltozót a tömbelemek és azok értékeinek megtekintéséhez.
Az Automatikusés helyi beállítások ablakról további információt a változók vizsgálata és az értékek visszaadása című témakörben talál.
Óra beállítása
Megadhatja azt a változót vagy kifejezést, amelyet figyelni szeretne a kód végiglépése során, ha hozzáadja a Figyelő ablakhoz.
Amíg a hibakereső szüneteltetve van, kattintson a jobb gombbal a
nameváltozóra, és válassza a Watch hozzáadásalehetőséget.A Figyelő ablak alapértelmezés szerint megnyílik a kódszerkesztő alján.
Miután beállította az órát a
nameváltozón, lépkedjen végig a kódon, hogy az egyesnameciklus-iterációkban látható legyen aforváltozó változásának értéke.A többi változóablaktól eltérően a Watch ablak mindig a figyelt változókat jeleníti meg. A hatókörön kívül eső változók elérhetetlenként jelennek meg.
További információ a Watch ablakról: Watch változók a Watch ablakokkal.
A hívásverem vizsgálata
A Hívásverem segítségével megismerheti az alkalmazás végrehajtási folyamatát. Megjeleníti a metódusok és függvények meghívásának sorrendjét.
Amíg a hibakereső szüneteltetve van a
forciklusban, tekintse meg a Hívásverem ablakot, amely alapértelmezés szerint megnyílik a kódszerkesztő jobb alsó ablaktábláján.Ha a Hívásverem ablak bezárult, válassza a Ctrl+D, C, vagy válassza Hibakeresés>Windows>Hívásverem lehetőséget a menüsávon.
A Hívásverem ablakban az aktuális
Mainmetódusnál látható a sárga mutató.Válassza F11 néhányszor, amíg meg nem jelenik a hibakereső szüneteltetése a
SendMessagemetódusban.A Hívásverem ablak felső sora az aktuális függvényt jeleníti meg, amely a
SendMessagemetódus. A második sor azt mutatja, hogy aSendMessagemetódus aMainmetódusból lett meghívva.
Jegyzet
A Hívásverem ablak hasonló néhány IDE hibakeresési nézetéhez, például az Eclipse-hez.
A Hívási verem ablakban duplán kattintva egy kódsorra, megnyithatja annak forráskódját, amely módosítja a hibakereső által vizsgált aktuális hatókört. A művelet nem viszi előre a hibakeresőt.
A Hívási verem ablakban a jobb egérgombbal kattintva más műveleteket is elvégezhet. Beszúrhat például töréspontokat a megadott függvényekbe, előléptetheti a hibakeresőt a Futtatás a kurzorhozhasználatával, vagy a forráskódra léphet.
A hívásveremről további információt a hívásverem megtekintése című témakörben talál.
Következő lépés
Ebben az oktatóanyagban megtanulta, hogyan indíthatja el a hibakeresőt, hogyan haladhat át a kódon, és hogyan vizsgálhatja meg a változókat. Érdemes lehet áttekinteni a hibakereső funkcióit, valamint a további információkra mutató hivatkozásokat.