Aracılığıyla paylaş


Hata ayıklayıcı seçeneklerini belirtme

Visual Studio'da, değişkenlerin nasıl görüntüleneceği, belirli uyarıların sunulup sunulmadığı, kesme noktalarının nasıl ayarlandığı ve kesmenin çalışan programları nasıl etkilediği gibi hata ayıklayıcı davranışı için çeşitli ayarlar belirtebilirsiniz. Araçlar>Seçenekleri menüsünden hata ayıklayıcı ayarlarını belirtirsiniz.

Araçlar > İçeri ve Dışarı Aktarma Ayarları > Tüm ayarları sıfırla ile tüm varsayılan ayarları geri yükleyebilirsiniz. Ayarların bir alt kümesini sıfırlamak için, test etmek istediğiniz değişiklikleri yapmadan önce ayarları İçeri ve Dışarı Aktarma Sihirbazı kaydedin ve ardından kaydedilen ayarlarınızı içeri aktarın.

Hata ayıklama seçeneklerini ayarlama

  1. Araçlar>Seçenekleri bölmesini açın ve Tüm Ayarlar>Hata Ayıklama bölümünü genişletin.
  1. Araçlar>Seçenekleri iletişim kutusunu açın ve Hata Ayıklama bölümünü genişletin.
  1. Yapılandırmak istediğiniz hata ayıklama seçenekleri kategorisini ( Genel, Çıkış Penceresi, Simgeler vb.) seçin.

    En yaygın seçenekler Genel kategorisinde bulunur. Daha fazla bilgi için bkz. Genel, Hata Ayıklama, Seçenekler.

  2. İstediğiniz seçeneği veya seçenekleri seçin veya temizleyin. Gerekirse, değişikliklerinizi uygulamak için Tamam'ı seçin.

Seçenekler hakkında Yardım almak için F1 tuşuna basabilirsiniz.

Hata ayıklayıcı seçenekleri

Aşağıdaki Genel seçeneklerini ayarlayabilirsiniz:

Tüm kesme noktalarını silmeden önce sor:Tüm Kesme Noktalarını Silme komutunu tamamlamadan önce onay gerektirir.

Bir işlem kesildiğinde tüm işlemleri durdur: Bir kesme oluştuğunda hata ayıklayıcıya bağlı olan tüm işlemleri aynı anda durdurur.

Özel durumlar AppDomain veya yönetilen/yerel sınırlar arasında geçtiğinde kesme: Yönetilen veya karma modlu hata ayıklamada, ortak dil çalışma zamanı üç koşul doğru olduğunda uygulama etki alanı sınırlarını veya yönetilen/yerel sınırları aşan özel durumları yakalayabilir:

  • Koşul 1: Yerel kod, COM Birlikte Çalışma kullanarak yönetilen kodu çağırdığında ve yönetilen kod bir özel durum oluşturduğunda. Bkz. COM ile Birlikte Çalışma Giriş.

  • Koşul 2: Uygulama etki alanı 1'de çalışan yönetilen kod, uygulama etki alanı 2'deki yönetilen kodu çağırdığında ve uygulama etki alanı 2'deki kod bir özel durum oluşturur. Bkz. uygulama etki alanlarıyla programlama.

  • Koşul 3: Kod yansıtma kullanarak bir işlevi çağırdığında ve bu işlev bir özel durum oluşturduğunda. Bkz. Yansıma.

  • 2. ve 3. koşullardaki özel durum, bazen ortak dil çalışma zamanı yerine mscorlib içindeki yönetilen kod tarafından yakalanır. Bu seçenek mscorlib tarafından yakalanan özel durumlara dayanarak kesilme durumunu etkilemez.

Adres düzeyinde hata ayıklamayı etkinleştirme: Adres düzeyinde hata ayıklama için gelişmiş özellikleri etkinleştirir (Ayrıştırma penceresi, kaydeder penceresi ve adres kesme noktaları).

  • Kaynakkullanılamıyorsa ayrıştırma göster: Kaynağın kullanılamadığı kodda hata ayıkladığınızda Ayrıştırma penceresini otomatik olarak gösterir.

Kesme noktası filtrelerini etkinleştirme: Kesme noktalarına yalnızca belirli işlemleri, iş parçacıklarını veya bilgisayarları etkilemeleri için filtre ayarlamanıza olanak tanır.

Yeni Özel Durum Yardımcısıkullanın: Özel durum yardımcısının yerini alan Özel Durum Yardımcısı'nı etkinleştirir. (Özel Durum Yardımcısı, Visual Studio 2017'den itibaren desteklenir)

Uyarı

Yönetilen kod için bu seçenek daha önce Özel durum yardımcısını etkinleştir olarak adlandırılıyordu.

Yalnızca Kodumu Etkinleştir: Hata ayıklayıcısı, sistem kodunu ve iyileştirilmiş veya hata ayıklama simgeleri olmayan diğer kodları yoksayarak yalnızca kullanıcı kodunu ("Kodum") görüntüler ve bu kodun içine girer.

  • Başlatma sırasında kullanıcı kodu yoksa uyarır (Yalnızca yönetilen): Hata ayıklama Yalnızca Kodum etkin olarak başladığında, kullanıcı kodu yoksa bu seçenek sizi uyarır ("Kodum").

.NET Framework kaynağı adımlarını etkinleştirme: Hata ayıklayıcının .NET Framework kaynağına adım atmasına izin verir. Bu seçeneğin etkinleştirilmesi Yalnızca Benim Kodum'un otomatik olarak devre dışı bırakılmasına neden olur. .NET Framework simgeleri önbellek konumuna indirilir. Bu dizindeki Önbellek simgeleri seçeneğiyle >>Arama Konumları bölümünde önbellek konumunu değiştirebilirsiniz.

.NET Framework kaynağı adımlarını etkinleştirme: Hata ayıklayıcının .NET Framework kaynağına adım atmasına izin verir. Bu seçeneğin etkinleştirilmesi Yalnızca Benim Kodum'un otomatik olarak devre dışı bırakılmasına neden olur. .NET Framework simgeleri önbellek konumuna indirilir. Bu dizindeki Önbellek simgeleri seçeneğiyle >Simgeleri bölümünde önbellek konumunu değiştirebilirsiniz.

Mümkün olduğunda hata ayıklanan işlevlerin otomatik olarak devre dışı bırakılması (.Net 8+, C++ Dinamik Hata Ayıklama): Seçildiğinde, daha kapsamlı bir hata ayıklama deneyimi sağlamak için hata ayıklanan işlevler devre dışı bırakılır.

Modül yüklenmesinde JIT iyileştirmesini devre dışı bırakma (yalnızca yönetilen): Bir modül yüklendiğinde ve hata ayıklayıcı bağlıyken JIT derlendiğinde yönetilen kodun JIT iyileştirmesini devre dışı bırakır. İyileştirmeyi devre dışı bırakmak, performans pahasına bazı sorunların hatalarını ayıklamayı kolaylaştırabilir. Just My Code kullanıyorsanız JIT iyileştirmesini engellemek, kullanıcı olmayan kodun kullanıcı kodu ("Kodum") olarak görünmesine neden olabilir. Daha fazla bilgi için bkz. JIT iyileştirme ve hata ayıklama.

Önceden derlenmiş görüntülerin kullanımını yapılandırma (Yalnızca yönetilen): Bu bağlantıyı seçtiğinizde Visual Studio Hata Ayıklayıcı Seçenekleri iletişim kutusu açılır. Seçeneği etkinleştirmek için Modül yüklemesinde önceden derlenmiş görüntülerin kullanılmasını engelle onay kutusunu işaretleyin ve Tamam'ı seçin. Seçildiğinde, NGEN veya hazır yükleme (RDR) için önceden derlenmiş görüntülerin yüklemesini devre dışı bırakır.

Modül yükünde önceden derlenmiş görüntülerin kullanılmasını engelle (Yalnızca yönetilen, yeniden başlatma sırasında sıfırlanır): Seçildiğinde, NGEN'in yüklenmesini veya önceden derlenmiş görüntülerin yüklenmesini (RDR) devre dışı bırakır.

Tam Zamanında hata ayıklamayı yapılandırma: Bu bağlantıyı seçtiğinizde Visual Studio Hata Ayıklayıcı Seçenekleri iletişim kutusu açılır. Seçeneği etkinleştirmek için bu tür kodlar için Tam Zamanında hata ayıklamayı etkinleştir onay kutusunu seçin. Bir veya daha fazla kod türü seçin: Yerel ve Yönetilen (.NET Framework) ve ardından Tamam'ı seçin. Bu seçenek, seçilen kod türleri için Tam Zamanında hata ayıklamayı etkinleştirir.

Özellikler ve işleçler üzerinde adım atma (Yalnızca yönetilen): Hata ayıklayıcının yönetilen koddaki özelliklere ve işleçlere adım atmasını engeller.

Özellik değerlendirmesini ve diğer örtük işlev çağrılarını etkinleştir: Değişkenler pencerelerinde ve QuickWatch iletişim kutusunda özelliklerin ve örtük işlev çağrılarının otomatik değerlendirmesini açar.

  • Değişken pencerelerindeki nesnelerde dize dönüştürme işlevini çağırma: Değişkenler pencerelerindeki nesneleri değerlendirirken örtük bir dize dönüştürme çağrısı yürütür. Sonuç, tür adı yerine dize olarak görüntülenir. Yalnızca C# kodunda hata ayıklama sırasında geçerlidir. Bu ayar DebuggerDisplay özniteliği tarafından geçersiz kılınabilir (bkz. DebuggerDisplay özniteliğini kullanma).

Kaynak sunucu desteğini etkinleştir: Visual Studio hata ayıklayıcısına SrcSrv (srcsrv.dll) protokolunu uygulayan kaynak sunuculardan kaynak dosyaları almasını bildirir. Team Foundation Server ve Windows için Hata Ayıklama Araçları, protokolü uygulayan iki kaynak sunuculardır. SrcSrv kurulumu hakkında daha fazla bilgi için SrcSrv belgelerine bakın. Ayrıca bkz. Simge belirtme (.pdb) ve kaynak dosyaları.

Önemli

.pdb dosyalarını okumak dosyalardaki rastgele kodları çalıştırabileceğinden, sunucuya güvendiğinizden emin olun.

  • Kaynak sunucu tanılama iletilerini Çıktı penceresine yazdır. : Kaynak sunucu desteği etkinleştirildiğinde, bu ayar tanılama görüntüsünü etkinleştirir.

  • Kısmi güven derlemeleri için kaynak sunucuya izin ver (Yalnızca yönetilen): Kaynak sunucu desteği etkinleştirildiğinde, bu ayar kısmi güven derlemeleri için kaynakları almama varsayılan davranışını geçersiz kılar.

  • sormadan her zaman güvenilmeyen kaynak sunucu komutlarını çalıştırın: Kaynak sunucu desteği etkinleştirildiğinde, bu ayar güvenilmeyen bir komut çalıştırırken varsayılan istem davranışını geçersiz kılar.

Kaynak Bağlantıyı Etkinleştir desteği: Visual Studio hata ayıklayıcısına, Kaynak Bağlantı bilgilerini içeren .pdb dosyalarının kaynak dosyalarını indirmesini söyler. Kaynak Bağlantısı hakkında daha fazla bilgi için bkz. Kaynak bağlantı belirtimi.

Önemli

Kaynak Bağlantı dosyaları http veya https kullanarak indirdiğinden , .pdb dosyasına güvendiğinize emin olun.

  • tüm Kaynak Bağlantı istekleri için Git Kimlik Bilgileri Yöneticisi kimlik doğrulamasına geri dönün: Kaynak Bağlantı desteği etkinleştirildiğinde ve Kaynak Bağlantı isteği kimlik doğrulaması başarısız olduğunda Visual Studio, Git Kimlik Bilgileri Yöneticisi'ni çağırır.

Kesme noktaları ve geçerli deyim için tüm kaynak satırı vurgula (yalnızca C++ ): Hata ayıklayıcı bir kesme noktasını veya geçerli deyimi vurguladığında, satırın tamamını vurgular.

Kaynak dosyaların özgün sürümle tam olarak eşleşmesini iste: Hata ayıklayıcıya, bir kaynak dosyanın hata ayıkladığınız yürütülebilir dosyayı oluşturmak için kullanılan kaynak kodun sürümüyle eşleştiklerini doğrulamasını söyler. Sürüm eşleşmediğinde, eşleşen bir kaynak bulmanız istenir. Eşleşen bir kaynak bulunamazsa, hata ayıklama sırasında kaynak kodu görüntülenmez.

Tüm Çıkış penceresi metniniAnlık pencereye yeniden yönlendir: Çıktı penceresinde normalde görünecek tüm hata ayıklayıcı iletilerini Anında penceresine gönderir.

Windowsdeğişkenlerinde nesnelerin ham yapısını göster: Tüm nesne yapısı görünümü özelleştirmelerini kapatır. Görünüm özelleştirmeleri hakkında daha fazla bilgi için bkz. yönetilen nesnelerin özel görünümlerini oluşturma .

ASP.NET (Chrome ve Edge) için JavaScript hata ayıklamasını etkinleştirme: ASP.NET uygulamalar için betik hata ayıklayıcısını etkinleştirir. Chrome'da ilk kez kullandığınızda, yüklediğiniz Chrome uzantılarını etkinleştirmek için tarayıcıda oturum açmanız gerekebilir. Eski davranışa geri dönmek için bu seçeneği devre dışı bırakın.

ASP.NET için JavaScript hata ayıklamasını etkinleştirme (Chrome, Edge ve IE): ASP.NET uygulamalar için betik hata ayıklayıcısını etkinleştirir. Chrome'da ilk kez kullandığınızda, yüklediğiniz Chrome uzantılarını etkinleştirmek için tarayıcıda oturum açmanız gerekebilir. Eski davranışa geri dönmek için bu seçeneği devre dışı bırakın.

Dll dışarı aktarmalarını yükle (Yalnızca yerel): Dll dışarı aktarma tablolarını yükler. Dll dışarı aktarma tablolarındaki sembol bilgileri, Windows iletileri, Windows yordamları (WindowProcs), COM nesneleri veya sıralama ya da sembolleri olmayan herhangi bir dll ile çalışıyorsanız yararlı olabilir. Dll dışarı aktarma bilgilerinin okunması biraz ek yük gerektirir. Bu nedenle, bu özellik varsayılan olarak kapalıdır.

  • Dll'nin dışarı aktarma tablosunda hangi simgelerin kullanılabilir olduğunu görmek için dumpbin /exportskullanın. Tüm 32 bit sistem dll'leri için simgeler kullanılabilir. dumpbin /exports çıktısını okuyarak, alfanümerik olmayan karakterler de dahil olmak üzere tam işlev adını görebilirsiniz. Bu, bir işlevde kesme noktası ayarlamak için kullanışlıdır. Dll dışarı aktarma tablolarındaki işlev adları hata ayıklayıcının başka bir yerinde kesilmiş olarak görünebilir. Çağrılar, mevcut işlev (en derin iç içe yerleştirilmiş) en üstte olacak şekilde çağrı sırasına göre listelenir. Daha fazla bilgi için bkz. dumpbin /exports.

Yazılan veriler değeri değiştirmediyse GPU bellek erişimi istisnalarını yoksay: Veriler değişmediyse hata ayıklama sırasında algılanan yarış durumlarını yoksayar. Daha fazla bilgi için bkz. GPU Kodunda Hata Ayıklama.

Güvenli olmayabilecek işlemlere karşı özel hata ayıklayıcı görselleştiricileri kullanırken uyarır (Yalnızca yönetilen):Visual Studio, güvenli olmayan kod çalıştırabileceği için hata ayıklanmış işlemde kod çalıştıran özel bir hata ayıklayıcısı görselleştiricisi kullanırken sizi uyarır.

Windows hata ayıklama yığın ayırıcısını etkinleştir (yalnızca yerel): Yığın tanılamasını geliştirmek için Windows hata ayıklama yığınını etkinleştirir. Bu seçeneğin etkinleştirilmesi hata ayıklama performansını etkiler.

Hata ayıklarken Tanılama Araçları'nı etkinleştirme: Hata ayıklarken Tanılama Araçları penceresi görüntülenir.

Hata ayıklarken geçen süreyi göster PerfTip: Hata ayıklarken kod penceresi belirli bir yöntem çağrısının geçen süresini görüntüler.

Anında Yeniden Yüklemeyi Etkinleştir: Hata ayıklama sırasında Anında Yeniden Yükleme işlevini etkinleştirir.

  • Devam ederken değişiklikleri otomatik olarak uygula (Yalnızca yerel): Visual Studio, işleme kesme durumundan devam ederken yaptığınız tüm bekleyen kod değişikliklerini otomatik olarak derler ve uygular. Seçili değilse, Hata Ayıklama menüsünün altındaki Kod Değişikliklerini Uygula öğesini kullanarak değişiklikleri uygulamayı seçebilirsiniz.

  • Eski kod hakkında uyar (Yalnızca yerel): Eski kodla ilgili uyarılar alın.

Hata ayıklama sırasında Tıkla Çalıştır düğmesini göster: Bu seçenek belirlendiğinde, hata ayıklama sırasında Tıklamaya Çalıştır düğmesi gösterilir.

Hata ayıklama durdurulduğunda konsolu otomatik olarak kapat: Visual Studio'ya hata ayıklama oturumunun sonunda konsolu kapatmasını söyler.

Hızlı ifade değerlendirmesini etkinleştir (Yalnızca yönetilen): Hata ayıklayıcının basit özelliklerin ve yöntemlerin yürütülmesini benzeterek daha hızlı değerlendirme denemesine izin verir.

Dış işlemde hata ayıklama sembollerini yükleme (Yalnızca yerel): Hata ayıklama sırasında bu bellek iyileştirmesini etkinleştirir.

Hata ayıklayıcıda hata ayıklama sırasında Visual Studio'yu ön plana getirin: Hata ayıklayıcıda duraklattığınızda Visual Studio'yu ön plana değiştirir.

Tıklanana kadar genişletilmiş veri ipuçlarını açık tutun: Bu seçenek belirlendiğinde, genişletilmiş bir veri ipucu, üzerinden tıklayarak çıkıncaya kadar genişletilmiş kalır.

Çözüm Gezgini'nde Dış Kaynaklar düğümünü etkinleştirme: Seçildiğinde, Dış Kaynaklar düğümü altında derlenmiş kodu gösterir.

Gerektiğinde otomatik olarak kaynak koda ayrıştırma (Sadece yönetilen): Seçildiğinde, dış .NET koduna adım atarken dış kodu otomatik olarak kaynak koda ayrıştırır.

Geçerli deyimi ve kesme noktası olan deyimleri vurgulayın: Hata ayıklayıcı bir kesme noktasını veya geçerli deyimi vurguladığında, satırın tamamını vurgular.

Hata ayıklarken değişken değerlerini düzenleyicide satır içi olarak gösterin: Hata ayıklayıcıda vurgulanan deyimde, değişkenlerin değerlerini göster.

  • Dönüş değerlerini satır içinde göster: Hata ayıklayıcıda vurgulanan deyimin dönüş değerlerini görüntüleyin.

  • İşlev bağımsız değişken değerlerini satır içinde göster: Hata ayıklayıcıda vurgulanan deyimde işlev bağımsız değişkenlerinin değerlerini görüntüleyin.

  • Geçerli satır ifadesi değerlerini satır içinde göster: Hata ayıklayıcıda geçerli satırdaki ifadelerin değerlerini görüntüleyin.

Visual Studio'nun eski sürümlerinde kullanılabilen seçenekler

Visual Studio'nun eski bir sürümünü kullanıyorsanız, başka seçenekler de olabilir.

UWP JavaScript Uygulamaları için Edge Geliştirici Araçlarını Etkinleştirme (Deneysel): Microsoft Edge'de UWP JavaScript uygulamaları için geliştirici araçlarını etkinleştirir.

ASP.NETiçin eski Chrome JavaScript hata ayıklayıcısını etkinleştirme: ASP.NET uygulamalar için eski Chrome JavaScript betik hata ayıklayıcısını etkinleştirir. Chrome'da ilk kez kullandığınızda, yüklediğiniz Chrome uzantılarını etkinleştirmek için tarayıcıda oturum açmanız gerekebilir.

Özel durum yardımcısını etkinleştirme: Yönetilen kod için özel durum yardımcısını etkinleştirir. Visual Studio 2017'den itibaren Özel Durum Yardımcısı, özel durum yardımcısının yerini aldı.

İşlenmeyen özel durumlarda çağrı yığınını geri alın: Çağrı Yığını penceresinin çağrı yığınını işlenmeyen özel durum oluşmadan önceki noktaya geri döndürmesine neden olur.

Visual Studio'yu Yönetici olarak çalıştırırken Chrome JavaScript hata ayıklamasını başlatmak için deneysel bir yol kullanın: Visual Studio'ya JavaScript hata ayıklaması sırasında Chrome'u başlatmanın yeni bir yolunu denemesini söyler.

Başlatma sırasında simge yoksa uyar (yalnızca yerel): Hata ayıklayıcının sembol bilgisi olmayan bir programda hata ayıkladığınızda bir uyarı iletişim kutusu görüntüler.

Başlatma sırasında betik hata ayıklaması devre dışı bırakıldığında uyarı ver: Hata ayıklayıcı, betik hata ayıklama devre dışı bırakılmışken başlatıldığında bir uyarı iletişim kutusu görüntüler.