Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, adım adım izlenecek yolda Visual Studio hata ayıklayıcısının özellikleri tanıtılmaktadır. Uygulamanızda hata ayıklama, genellikle uygulamanızı hata ayıklayıcı bağlı iken çalıştırdığınız anlamına gelir. Bu görevi yaptığınızda, hata ayıklayıcısı kodunuzun çalışırken ne yaptığını görmek için birçok yol sağlar. Kodunuzda adım adım ilerleyebilir ve değişkenlerde depolanan değerlere bakabilirsiniz. Değerlerin ne zaman değiştiğini görmek için değişkenler üzerinde saat ayarlayabilirsiniz. Kod dalının çalışıp çalışmadığını görmek için kodunuzun yürütme yolunu inceleyebilirsiniz.
Eğer bu makale sizin kodda hata ayıklama konusunda ilk deneyiminizse, bkz. Tamamen yeni başlayanlar için hata ayıklama. Hata ayıklayıcısı özelliklerinin daha üst düzey bir görünümünü istiyorsanız bkz. Visual Studio hata ayıklayıcısına genel bakış.
Tanıtım uygulaması C# olsa da, özelliklerin çoğu C++, Visual Basic, F#, Python, JavaScript ve Visual Studio tarafından desteklenen diğer diller için geçerlidir. F# Düzenle ve devam et'i desteklemez. F# ve JavaScript OtomatikLer penceresini desteklemez . Ekran görüntüleri C# dilindedir.
Bu öğreticide şunları yapacaksınız:
- Hata ayıklayıcıyı başlatın ve kesme noktalarına basın
- Kodda adım adım ilerlemenizi sağlayacak komutları hata ayıklayıcıda öğrenin
- Veri ipuçlarında ve hata ayıklayıcı pencerelerinde değişkenleri inceleme
- Çağrı yığınını inceleme
Önkoşullar
Visual Studio'yu ve .NET masaüstü geliştirme iş yükünü yüklemiş olmanız gerekir.
Visual Studio'yu yüklemeniz gerekiyorsa Visual Studio indirmeleri sayfasından ücretsiz olarak edinin.
Visual Studio'nuz zaten varsa ancak .NET masaüstü geliştirme iş yükü yüklü değilse Araçlar Araçları>ve Özellikleri Al... bölümüne gidin. Visual Studio Yükleyicisi'nde .NET masaüstü geliştirme iş yükünü ve ardından Değiştir'i seçin.
Proje oluşturma
İlk olarak bir C#/.NET konsol uygulaması projesi oluşturun. Proje şablonu, herhangi bir şey eklemeden önce ihtiyacınız olan tüm dosyaları içerir.
Visual Studio'yu açın. Başlangıç penceresi açık değilse Dosya >seçin.
Başlangıç penceresinde yeni proje oluştur seçin.
Yeni proje oluştur penceresinde, arama kutusuna konsol girin. Ardından, Dil listesinden C# seçin ve ardından Platform listesinden windows seçin.
Dil ve platform filtrelerini uyguladıktan sonra Konsol Uygulaması şablonunu seçin ve ardından İleriseçin.
Not
Konsol Uygulaması şablonunu görmüyorsanız, Yeni proje oluştur penceresinden yükleyebilirsiniz. Aradığınızı bulamıyor musunuz? mesajında Daha fazla araç ve özellik yükle bağlantısını seçin. Ardından Visual Studio Yükleyicisi'nde .NET masaüstü geliştirme iş yükünü seçin.
Yeni projenizi yapılandırın penceresinde, GetStartedDebugging ifadesini, Proje adı kutusuna girin. Ardından İleriöğesini seçin.
Ek bilgiler penceresinde, Çerçeve açılan menüsünde .NET 10.0'ın seçili olduğundan emin olun ve oluştur'u seçin.
Visual Studio'yu açın. Başlangıç penceresi açık değilse Dosya >seçin.
Başlangıç penceresinde yeni proje oluştur seçin.
Yeni proje oluştur penceresinde, arama kutusuna konsol girin. Ardından, Dil listesinden C# seçin ve ardından Platform listesinden windows seçin.
Dil ve platform filtrelerini uyguladıktan sonra Konsol Uygulaması şablonunu seçin ve ardından İleriseçin.
Not
Konsol Uygulaması şablonunu görmüyorsanız, Yeni proje oluştur penceresinden yükleyebilirsiniz. Aradığınızı bulamıyor musunuz? mesajında Daha fazla araç ve özellik yükle bağlantısını seçin. Ardından Visual Studio Yükleyicisi'nde .NET masaüstü geliştirme iş yükünü seçin.
Yeni projenizi yapılandırın penceresinde, GetStartedDebugging ifadesini, Proje adı kutusuna girin. Ardından İleriöğesini seçin.
Ek Bilgiler penceresinde, Framework açılır menüsünde .NET 8.0 seçili olduğundan emin olun ve ardından Oluşturseçeneğine tıklayın.
Visual Studio yeni projenizi açar.
Uygulamayı oluşturma
Program.csiçinde, varsayılan kodun tümünü aşağıdaki kodla değiştirin:
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);
}
}
Hata ayıklayıcıyı başlatın!
Çoğunlukla, bu makalede klavye kısayolları kullanılır. Hata ayıklayıcı komutlarını yürütmenin hızlı bir yoludur. Araç çubuğu veya menü komutları gibi eşdeğer komutlar da kullanılabilir.
Hata ayıklayıcıyı başlatmak için F5seçin veya Standart araç çubuğunda Hedef Hata Ayıkla düğmesini seçin ya da Hata Ayıklama araç çubuğunda Hata Ayıklamayı Başlat düğmesini seçin veya menü çubuğundan Hata Ayıklama>Başlat seçin.
F5, uygulamayı uygulama işlemine eklenmiş hata ayıklayıcıyla başlatır. Hata ayıklamaya başladığınızda uygulama tamamlanmaya kadar çalışır ve konsol çıkışını görürsünüz.
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 10Hata ayıklayıcıyı durdurmak için, Shift+F5 tuşlarına basın veya Hata Ayıklama araç çubuğunda hata ayıklamayı durdur düğmesini seçin veya menü çubuğundan Hata Ayıklama >seçin.
Konsol penceresinde, konsol penceresini kapatmak için herhangi bir anahtarı seçin.
Kesme noktası ayarlama ve hata ayıklayıcıyı başlatma
forişlevininMaindöngüsünde, aşağıdaki kod satırında sol kenar boşluğuna tıklayarak bir kesme noktası ayarlayın:name += letters[i];Kesme noktasını ayarladığınız yerde kırmızı bir daire görüntülenir.
Kesme noktaları, güvenilir hata ayıklamanın temel özelliklerinden biridir. Visual Studio'nun çalışan kodunuzu duraklatmasını istediğiniz kesme noktaları ayarlayabilirsiniz. Değişkenlerin değerlerine veya belleğin davranışına bakabilir veya kod dalının çalışıp çalışmadığını öğrenebilirsiniz.
Hata ayıklamayı başlatmak için F5seçin veya Standart araç çubuğunda Hata Ayıklama Hedefi düğmesini seçin ya da Hata Ayıklama araç çubuğunda Hata Ayıklamayı Başlat düğmesini seçin veya menü çubuğundan Hata Ayıklama>Hata Ayıklamayı Başlat seçin. Uygulama başlatılır ve hata ayıklayıcı, kesme noktasını ayarladığınız kod satırına kadar çalışır.
Sarı ok, hata ayıklayıcının durduğu ifadeyi gösterir. Uygulama yürütmesi aynı noktada duraklatılır ve deyim henüz yürütülmemiştir.
Uygulama çalışmadığında F5, uygulamayı ilk kesme noktasına ulaşana kadar çalıştıran hata ayıklayıcıyı başlatır. Uygulama bir kesme noktasında duraklatılırsa F5 , sonraki kesme noktasına ulaşana kadar uygulamayı çalıştırmaya devam eder.
Kesme noktaları, ayrıntılı olarak incelemek istediğiniz kod satırını veya bölümünü bildiğinizde yararlı bir özelliktir. Koşullu kesme noktaları gibi ayarlayabileceğiniz farklı kesme noktası türleri hakkında daha fazla bilgi için bkz. Doğru kesme noktası türünü kullanma.
Veri ipuçlarını kullanarak kodda gezinme ve verileri inceleme
kod yürütme
name += letters[i]deyiminde duraklatılırken, dizi boyutunu ve öğe türünü gösteren bir veri ipucunu görmek için fareylelettersdeğişkeninin üzerine gelinchar[10].Not
Hata ayıklayıcının en kullanışlı özelliklerinden biri, bir değişkeni inceleyebilmesidir. Genellikle bir sorunun hatalarını ayıklamaya çalışırken değişkenlerin belirli bir zamanda beklediğiniz değerlere sahip olup olmadığını bulmaya çalışırsınız. Veri ipuçlarını görüntülemek, bunu denetlemenin iyi bir yoludur.
Tüm dizi öğelerini ve değerlerini görüntülemek için
lettersdeğişkenini genişletin.
Boş bir dize olan geçerli değerini görmek için
namedeğişkeninin üzerine gelin.Hata ayıklayıcıyı sonraki deyime ilerletmek için F10'u seçin veya Hata Ayıklama araç çubuğunda Adımla düğmesini seçin veya menü çubuğundan Hata Ayıkla> Üzerine Adımla'yı seçin. yöntem çağrısından geçmek için
SendMessageiki kez daha seçin.F10, kodun çalışmasına rağmen işlev veya yöntemlere adım atmadan hata ayıklama işlemini ilerletir. Bu şekilde, şu anda ilgili olmayan
SendMessageyöntemindeki kodda hata ayıklamayı atladınız.fordöngüsünü birkaç kez yinelemek için F10 tekrar tekrar seçin. Her döngü yinelemesi sırasında kesme noktasında duraklatın ve ardından veri ipucundaki değerini denetlemek içinnamedeğişkeninin üzerine gelin.
Değişkenin değeri,
fordöngüsünün her yinelemesiyle değişir vefdeğerlerini gösterir, sonrafr, sonrafrevb. Hata ayıklayıcıyı döngüde daha hızlı ilerletmek için bunun yerine F5 seçin; bu, sonraki deyim yerine kesme noktanıza ilerler.Kod yürütme,
foryöntemininMaindöngüsünde duraklatılırken, F11'i seçin veya Hata Ayıklama araç çubuğundan Adımla düğmesini seçin veya yöntem çağrısına ulaşana kadar menü çubuğundan >SendMessageAdımla'yı seçin.Hata ayıklayıcısı şu kod satırında duraklatılmalıdır:
SendMessage(name, a[i]);SendMessageyöntemine geçmek için F11 yeniden seçin.Sarı işaretçi
SendMessageyöntemine ilerler.
F11 kodunuzun yürütme akışını daha ayrıntılı incelemenize yardımcı olur. Yöntem çağrısından bir yönteme geçmek için F11öğesini seçin. Varsayılan olarak, hata ayıklayıcısı kullanıcı olmayan yöntemlere adımlamayı atlar. Kullanıcı olmayan kodda hata ayıklama hakkında bilgi edinmek için bkz. Just My Code .
SendMessageyönteminin hata ayıklamasını tamamladıktan sonramainyöntemininfordöngüsüne geri dönmeye hazırsınız.SendMessageyönteminden çıkmak için, Shift+F11'i seçin veya Hata Ayıklama araç çubuğundaki Dışarı Adımla düğmesini seçin veya menü çubuğundan Hata Ayıklama >Ayıkla'yı seçin.Step Out, uygulamanın yürütülmesini sürdürür ve geçerli yöntem veya işlev dönene kadar hata ayıklayıcının ilerlemesini sağlar.
sarı işaretçiyi
foryöntemininMaindöngüsündeSendMessageyöntem çağrısında duraklatılmış olarak görürsünüz. Kodunuz arasında gezinmenin farklı yolları hakkında daha fazla bilgi için bkz. hata ayıklayıcıda kodda gezinme.
"Kodda gezinmek için Tıklayarak Çalıştır'ı kullanın"
Kesme noktasına yeniden ilerlemek için F5 seçin.
Kod düzenleyicisinde,
Console.WriteLineyöntemindekiSendMessageyöntem çağrısının üzerine gelin ve Tıklayıp Çalıştır düğmesi görünene kadar bekleyin. Düğmenin araç ipucunda "Yürütmeyi buraya kadar çalıştır" ifadesi gösterilir.
Tıklamak için Çalıştır düğmesini seçin. Alternatif olarak, imleciniz
Console.WriteLinedeyimindeyken Ctrl+F10öğesini seçin. Alternatif olarak,Console.WriteLineyöntem çağrısına sağ tıklayın ve bağlam menüsünden İmleçte Çalıştır seçin.Hata ayıklayıcı
Console.WriteLineyöntem çağrısına ilerler.Tıkla ve Çalıştır düğmesinin kullanılması, geçici bir kesme noktası ayarlamaya benzer. Bu yaklaşım, açık bir dosyadaki uygulama kodunuzun görünür bir bölgesinde hızla gezinmek için kullanışlıdır.
Uygulamanızı hızlı bir şekilde yeniden başlatın
Uygulamanızı hata ayıklayıcıda baştan yeniden çalıştırmak için, Ctrl+Shift+F5öğesini seçin veya Hata Ayıklama araç çubuğunda yeniden başlat düğmesini seçin veya menü çubuğundan Hata Ayıkla >seçin.
Yeniden Başlat hata ayıklayıcıyı durdurur ve bir adımda yeniden başlatır. Hata ayıklayıcı yeniden başlatıldığında, daha önce for döngüsü içinde ayarladığınız kesme noktasına kadar çalışır ve ardından duraklar.
Otomatik Ve Yerel Ayarlar pencereleriyle değişkenleri inceleme
Otomatik ve Yerel Değişkenler pencereleri, hata ayıklarken değişken değerleri gösterir. Pencereler yalnızca hata ayıklama oturumu sırasında kullanılabilir. Autos penceresi, hata ayıklayıcının bulunduğu geçerli satırda ve önceki satırda kullanılan değişkenleri gösterir. Locals penceresi, genellikle geçerli işlev veya yöntem olan yerel kapsamda tanımlanan değişkenleri gösterir.
Hata ayıklayıcı duraklatıldığında, kod düzenleyicisinin alt kısmındaki Otomatikler penceresini görüntüleyin.
Otomatik penceresi kapalıysa, Ctrl+D, Aveya menü çubuğundan Hata Ayıkla>Windows>Otomatik'i seçin.
Hata ayıklayıcı hala duraklatılmış durumdayken, Otomatik penceresinin yanındaki bir sekmede Locals penceresini görüntüleyin.
Locals penceresi kapalıysa, Ctrl+D, Ltuşlarına basın veya Hata Ayıkla>Windows>Yerellerseçeneğini seçin.
Locals penceresinde, dizi öğelerini ve değerlerini görmek için
lettersdeğişkenini genişletin.
Otomatik veYerel Ayarlar pencereleri hakkında daha fazla bilgi için bkz. Değişkenleri ve dönüş değerlerini inceleme.
Saat ayarlama
İzlemek istediğiniz bir değişkeni veya ifadeyi, kodda ilerlerken İzleme penceresine ekleyerek belirtebilirsiniz.
Hata ayıklayıcı duraklatılırken,
namedeğişkenine sağ tıklayın ve İzleme Ekleseçin.İzleme penceresi varsayılan olarak kod düzenleyicisinin en altında açılır.
namedeğişkenine bir izleyici ayarladıktan sonra, kodunuzda ilerleyerekfordeğişkeninin değerinin hernamedöngü yinelemesiyle değiştiğini görün.Diğer değişken pencerelerinden farklı olarak, İzle penceresi her zaman izlediğiniz değişkenleri gösterir. Kapsam dışında olan değişkenler kullanılamaz olarak görüntülenir.
İzle penceresi hakkında daha fazla bilgi için İzleme pencereleriyledeğişkenleri izlemeye bakın.
Çağrı yığınını inceleme
Çağrı Yığını, uygulamanızın yürütme akışını anlamanıza yardımcı olan bir araçtır. Yöntemlerin ve işlevlerin çağrılma sırasını gösterir.
Hata ayıklayıcı
fordöngüsünde duraklatılmış durumdayken, kod düzenleyicisinin sağ alt bölmesinde varsayılan olarak açılan Çağrı Yığını penceresini görüntüleyin.Çağrı Yığını penceresi kapalıysa, Ctrl+D, Cöğesini seçin veya menü çubuğundan Hata Ayıklama>Windows>Çağrı Yığını seçeneğini seçin.
Çağrı Yığını penceresinde geçerli
Mainyönteminde sarı işaretçiyi görürsünüz.yönteminde hata ayıklayıcının duraklatılmış olduğunu görene kadar birkaç kez
SendMessageseçin.Çağrı Yığını penceresinin üst satırı, geçerli işlev olan
SendMessageyöntemini gösterir. İkinci satır,SendMessageyöntemininMainyönteminden çağrıldığını gösterir.
Not
Çağrı Yığını penceresi, Eclipse gibi bazı IDE'lerdeki Hata Ayıklama perspektifine benzer.
Çağrı Yığını penceresinde, kaynak koda gitmek için bir kod satırına çift tıklayarak hata ayıklayıcı tarafından incelenen mevcut kapsamı değiştirebilirsiniz. Bu eylem hata ayıklayıcıyı ilerletmez.
Diğer işlemleri yapmak için Çağrı Yığını penceresinden sağ tıklama menülerini de kullanabilirsiniz. Örneğin, belirtilen işlevlere kesme noktaları ekleyebilir, İmleçÇalıştır'ı kullanarak hata ayıklayıcıyı ilerletebilir veya kaynak koduna gidebilirsiniz.
Çağrı Yığını hakkında daha fazla bilgi için bkz. Çağrı yığınını görüntüleme.
Sonraki adım
Bu öğreticide hata ayıklayıcıyı başlatmayı, kodda adım adım ilerleyip değişkenleri incelemeyi öğrendiniz. Daha fazla bilgi için bağlantılarla birlikte hata ayıklayıcısı özelliklerine üst düzey bir bakış elde etmek isteyebilirsiniz.