Share via


Visual Studio'da Python kodunuzun hatalarını ayıklama

Visual Studio, Python için kapsamlı bir hata ayıklama deneyimi sağlar. Bu makalede, hata ayıklayıcısını çalışan işlemlere eklemeyi ve İzleme ve Anlık pencerelerde ifadeleri değerlendirmeyi öğreneceksiniz. Hata ayıklayıcıda yerel değişkenleri inceleyebilir, kesme noktalarını kullanabilir, deyimleri adımlayabilir/dışarı/dışarı alabilir, Sonraki Deyimi Ayarla ve daha fazlasını yapabilirsiniz.

Senaryoya özgü hata ayıklama bilgileri için aşağıdaki makalelere bakın:

Önkoşullar

  • Python iş yükleri desteğiyle yüklenen Visual Studio. Daha fazla bilgi için bkz . Visual Studio'da Python desteğini yükleme.

  • Hata ayıklayıcı ile kullanılacak Python kodu.

Projeli veya projesiz kodda hata ayıklama

Python ortamınızı ve bağımsız değişkenlerinizi denetlemek istiyorsanız, önce kodunuz için bir proje oluşturun. Mevcut Python kodundan proje şablonuyla proje oluşturabilirsiniz. Daha fazla bilgi için bkz . Mevcut Python kod dosyalarından proje oluşturma.

Ancak, Python kodunuzda hata ayıklamak için Visual Studio'da bir proje veya çözüm dosyasına ihtiyacınız yoktur. Tek başına Python dosyasında kod hatalarını ayıklamak için, dosyanızı Visual Studio'da açın ve Hata AyıklamaYı Başlat Hata Ayıklama'yı> seçin. Visual Studio betiği genel varsayılan ortamla başlatır ve bağımsız değişken kullanmaz. Ardından kodunuz için tam hata ayıklama desteğine sahip olursunuz. Daha fazla bilgi için bkz . Python ortamları.

Temel hata ayıklamayı keşfetme

Temel hata ayıklama iş akışı, ayarlar kesme noktalarını, kodda adım atmayı, değerleri incelemeyi ve özel durumları işlemeyi içerir. Hata AyıklamaYı>Başlat Hata Ayıklama'ya tıklayarak hata ayıklama oturumu başlatabilir veya F5 klavye kısayolunu kullanabilirsiniz. Bir proje için, bu eylemler projenin etkin ortamı ve Proje Özellikleri için belirtilen komut satırı bağımsız değişkenleri veya arama yolları ile başlangıç dosyasını başlatır. Özellikleri yapılandırmak için bkz . Proje hata ayıklama seçeneklerini ayarlama.

Proje başlangıç dosyasını ayarlama

Projenin başlangıç dosyası Çözüm Gezgini kalın olarak gösterilir. Başlangıç dosyası olarak hangi dosyanın kullanılacağını seçebilirsiniz.

  • Başlangıç dosyası olarak bir proje dosyası belirtmek için, dosyaya sağ tıklayın ve Başlangıç Öğesi Olarak Ayarla'yı seçin.

Visual Studio 2017 sürüm 15.6 ve sonraki sürümlerinde, belirtilen bir başlangıç dosyası kümeniz yoksa bir uyarı görürsünüz. Visual Studio'nun önceki sürümleri Python yorumlayıcısının çalıştığı bir Çıkış penceresi açabilir veya Çıkış penceresi kısa bir süre açılıp kapatılır.

Etkin ortamı belirtme

Proje dosyası kullanıyorsanız, hata ayıklayıcı her zaman projenin etkin Python ortamıyla başlar. Geçerli etkin ortamı değiştirebilirsiniz. Daha fazla bilgi için bkz . Proje için Python ortamı seçme.

Tek başına Bir Python kod dosyasında hata ayıklaması yapıyorsanız, Visual Studio betiği genel varsayılan ortamla başlatır ve bağımsız değişken kullanmaz.

Kesme noktaları ayarlama

Kesme noktaları, program durumunu inceleyebilmeniz için işaretli bir noktada kodun yürütülmesini durdurur.

Python'daki bazı kesme noktaları, diğer programlama dilleriyle çalışmış geliştiriciler için şaşırtıcı olabilir. Python'da dosyanın tamamı yürütülebilir kod olduğundan Python, üst düzey sınıf veya işlev tanımlarını işlemek için yüklendiğinde dosyayı çalıştırır. Bir kesme noktası ayarlanırsa, hata ayıklayıcının bir sınıf bildiriminde parçalandığını fark edebilirsiniz. Bazen şaşırtıcı olsa da bu davranış doğrudur.

  • Kesme noktası ayarlamak için, kod düzenleyicisinin sol kenar boşluğunda öğesini seçin veya bir kod satırına sağ tıklayın ve Kesme Noktası Ekleme Kesme Noktası'nı> seçin. Belirli bir kesme noktası olan her satırda kırmızı bir nokta görünür.

    Visual Studio'da kod dosyasının sol kenar boşluğunda kesme noktalarının nasıl görüntülendiğini gösteren ekran görüntüsü.

  • Kesme noktasını kaldırmak için kırmızı noktayı seçin veya kod satırına sağ tıklayın ve Kesme Noktasını Sil Kesme Noktasını> Sil'i seçin. Ayrıca, kırmızı noktayı ve Kesme>Noktasını Devre Dışı Bırak'ı seçerek kesme noktasını devre dışı bırakabilirsiniz.

    Visual Studio'da kod dosyasının sol kenar boşluğunda kesme noktasının nasıl devre dışı bırakıldığını gösteren ekran görüntüsü.

Koşulları ve eylemleri ayarlama

Kesme noktasının tetiklendiği koşulları özelleştirebilirsiniz; örneğin, yalnızca bir değişken belirli bir değere veya değer aralığına ayarlandığında kesilebilir.

  • Koşulları ayarlamak için kesme noktasının kırmızı noktasına sağ tıklayın ve Koşullar'ı seçin. Kesme Noktası Ayarlar iletişim kutusu açılır.

    İletişim kutusunda, Python kodunu kullanarak birden çok koşul ekleyebilir ve koşullu ifadeler oluşturabilirsiniz. Visual Studio'daki bu özelliğin tüm ayrıntıları için bkz . Kesme noktası koşulları.

    Visual Studio'da bir kesme noktası için Koşulları yapılandırma seçeneğinin nasıl seçileceğini gösteren ekran görüntüsü.

  • Kesme noktası için Eylemler'i ayarlama seçenekleriniz de vardır. Çıkış penceresinde oturum açmak için bir ileti oluşturabilir ve isteğe bağlı olarak yürütmeye otomatik olarak devam etmek için belirtebilirsiniz.

    Visual Studio'da kesme noktası için izleme noktası eylemleri oluşturmayı gösteren ekran görüntüsü.

    İletinin günlüğe kaydedilmesi, doğrudan uygulamanıza günlük kodu eklemeyen bir izleme noktası oluşturur.

Kesme noktası için koşulları ve eylemleri nasıl yapılandırdığınıza bağlı olarak, sol kenar boşluğundaki kırmızı simge ayarlarınızı gösterecek şekilde değişir. Nokta şeklini, saat zamanlayıcısını veya elması görebilirsiniz.

Kodda adım adım ilerleyin

Visual Studio bir kesme noktasında kod yürütmeyi durdurduğunda, yeniden kesmeden önce kodunuzda adım adım ilerleyebileceğiniz veya kod bloklarını çalıştırmak için kullanabileceğiniz birkaç komut vardır. Komutlar, Visual Studio'da Hata Ayıklayıcı araç çubuğu, Hata Ayıklama menüsü, kod düzenleyicisinde sağ tıklama bağlam menüsü ve klavye kısayolları gibi birkaç yerde kullanılabilir.

Aşağıdaki tabloda bu komutlar özetlenerek klavye kısayolu sağlanır:

Command Kısayol Açıklama
Continue F5 Sonraki kesme noktasına ulaşana kadar kodu çalıştırın.
Adımla F11 Sonraki deyimi çalıştırın ve durdurun. Sonraki deyim bir işlev çağrısıysa, hata ayıklayıcı çağrılan işlevin ilk satırında durur.
AdımLa F10 bir işleve çağrı yapma (tüm kodunu çalıştırma) ve herhangi bir dönüş değeri uygulama dahil olmak üzere sonraki deyimi çalıştırın. Bu komut, hata ayıklamanız gerekmeyen işlevleri kolayca atlamanızı sağlar.
Dışarı Adımla Shift+F11 Geçerli işlevin sonuna kadar kodu çalıştırın ve ardından çağıran deyimine geçin. Bu komut, geçerli işlevin geri kalanında hata ayıklamanız gerekmeyen durumlarda kullanışlıdır.
İmleç'e Çalıştır Ctrl+F10 Kodu düzenleyicide şapka işaretinin konumuna kadar çalıştırın. Bu komut, hata ayıklamanız gerekmeyen bir kod kesimini kolayca atlamanızı sağlar.
Sonraki Deyimi Belirle Ctrl+Shift+F10 Koddaki geçerli çalıştırma noktasını şapka işaretinin konumuna değiştirin. Bu komut, kodun hatalı olduğunu bildiğiniz veya istenmeyen bir yan etki ürettiği durumlar gibi bir kod kesiminin çalıştırılmasını hiç atlamanıza olanak tanır.
Sonraki Deyimi Göster Alt+Num+\ Kodda çalıştırmak için sonraki deyime dönün. Bu komut, kodunuzda hata ayıklayıcının durdurulduğu yeri bulmanıza yardımcı olur.

Değerleri inceleme ve değiştirme

Hata ayıklayıcıda kod yürütmeyi durdurduğunuzda değişkenlerin değerlerini inceleyebilir ve değiştirebilirsiniz. Tek tek değişkenleri ve özel ifadeleri izlemek için İzleme penceresini de kullanabilirsiniz. Daha fazla bilgi için bkz . Değişkenleri inceleme.

  • Hata ayıklama sırasında Data İpuçları özelliğini kullanarak bir değeri görüntülemek için, fareyi düzenleyicideki herhangi bir değişkenin üzerine getirin. Değişken değerini seçerek değiştirebilirsiniz:

    Visual Studio hata ayıklayıcısındaki bir değişkenin Data İpuçları değerini gösteren ekran görüntüsü.

  • Otomatikler penceresini kullanmak için Windows>Otomatik Hata Ayıklama'yı>seçin. Bu pencere, geçerli deyime yakın değişkenler ve ifadeler içerir. Değer sütununa çift tıklayabilir veya değeri düzenlemek için F2'yi seçip girebilirsiniz:

    Visual Studio hata ayıklayıcısında Otomatikler penceresini gösteren ekran görüntüsü.

    Otomatikler penceresini kullanma hakkında daha fazla bilgi için bkz. Otomatik ve Yerel Ayarlar pencerelerindeki değişkenleri inceleme.

  • Yerel Ayarlar penceresini kullanmak için Windows>Yerel Ayarları hatalarını ayıkla'yı> seçin. Bu pencere, geçerli kapsamdaki ve yeniden düzenlenebilen tüm değişkenleri görüntüler:

    Visual Studio hata ayıklayıcısında Yereller penceresini gösteren ekran görüntüsü.

    Yerel Ayarlar penceresini kullanma hakkında daha fazla bilgi için bkz. Otomatik ve Yerel Ayarlar pencerelerindeki değişkenleri inceleme.

  • Gözcü pencerelerini kullanmak için Windows>Watch>Watch 1-4'de Hata Ayıkla'yı>seçin. Bu seçenek rastgele Python ifadeleri girmenize ve sonuçları görüntülemenize olanak tanır. İfadeler her adım için yeniden değerlendirilir:

    Visual Studio hata ayıklayıcısında gözcü penceresini gösteren ekran görüntüsü.

    Gözcü penceresini kullanma hakkında daha fazla bilgi için bkz. Watch ve QuickWatch pencereleriyle değişkenler üzerinde saat ayarlama.

  • Bir dize değerini incelemek için Değer girişinin sağ tarafındaki Görünüm (büyüteç) öğesini seçin. str, unicode, bytesve bytearray türlerinin tümü inceleme için kullanılabilir.

    Görünüm açılan menüsünde dört görselleştirme seçeneği görüntülenir: Metin, HTML, XML veya JSON.

    Visual Studio hata ayıklayıcısındaki Görünüm büyüteçlerinden görselleştiricilere nasıl erişildiğini gösteren ekran görüntüsü.

    Bir görselleştirmeyi seçtikten sonra, açılan iletişim kutusu seçili türe göre alıntılanmamış dize değerini gösterir. Dizeyi kaydırma ve kaydırma, söz dizimi vurgulama ve ağaç görünümleri ile görüntüleyebilirsiniz. Bu görselleştirmeler uzun ve karmaşık dizelerle ilgili sorunların hatalarını ayıklamaya yardımcı olabilir.

Özel durumları görüntüleme

Hata ayıklama sırasında programınızda bir hata oluşursa, ancak bunun için bir özel durum işleyiciniz yoksa, hata ayıklayıcısı özel durum noktasında sonlanır:

Visual Studio hata ayıklayıcısında işlenmeyen bir hatanın Özel Durum açılan listesini gösteren ekran görüntüsü.

Bir hata oluştuğunda, çağrı yığını da dahil olmak üzere geçerli program durumunu inceleyebilirsiniz. Ancak, kodda adım adım ilerlerseniz, hata ayıklama işlemi işlenene veya programınızdan çıkana kadar özel durum oluşturma işlemi devam eder.

  • Özel durumların genişletilmiş bir görünümünü görmek için Windows>Özel Durum Ayarlar Hata Ayıklama'yı>seçin.

    Visual Studio hata ayıklayıcısında Özel Durumlar Ayarlar penceresini gösteren ekran görüntüsü.

    Özel Durumlar Ayarlar penceresinde, bir özel durumun yanındaki onay kutusu, özel durum oluştuğunda hata ayıklayıcının her zaman bozulup kırılmayacağını denetler.

  • Belirli bir özel durum için daha sık kesme yapmak için Özel durum Ayarlar penceresinde özel durumun yanındaki onay kutusunu seçin.

  • Varsayılan olarak, bir özel durum işleyicisi kaynak kodda bulunamadığında çoğu özel durum bozulabilir. Bu davranışı değiştirmek için herhangi bir özel duruma sağ tıklayın ve Kullanıcı Kodunda İşlenmeyenLere Devam Et seçeneğini değiştirin. Özel durum için daha az sık kesme yapmak için bu seçeneğin seçimini kaldırın.

  • Özel durum Ayarlar penceresinde görünmeyen bir özel durum yapılandırmak için Ekle 'yi (artı simgesi) seçin. İzleyebileceğiniz özel durum için bir ad girin. Ad, özel durumun tam adıyla eşleşmelidir.

Proje hata ayıklama seçeneklerini yapılandırma

Varsayılan olarak, hata ayıklayıcı programınızı standart Python başlatıcısıyla başlatır, komut satırı bağımsız değişkeni yoktur ve başka özel yol veya koşul yoktur. Hata ayıklama özelliklerini ayarlayarak python projesi için başlangıç seçeneklerini yapılandırabilirsiniz.

  • Bir projenin hata ayıklama özelliklerine erişmek için Çözüm Gezgini'da Python projenize sağ tıklayın, Özellikler'i seçin ve ardından Hata Ayıkla sekmesini seçin.

    Visual Studio hata ayıklayıcısında Python projesi hata ayıklama özelliklerini gösteren ekran görüntüsü.

Aşağıdaki bölümlerde belirli özellikler açıklanmaktadır.

Başlatma davranışını tanımlama

Aşağıdaki tabloda Başlatma modu özelliği için olası değerler listeleniyor. Hata ayıklayıcının başlatma davranışını tanımlamak için bu özelliği kullanın.

Value Açıklama
Standart Python başlatıcısı CPython, IronPython ve Stackless Python gibi çeşitlemelerle uyumlu taşınabilir Python'da yazılmış hata ayıklama kodunu kullanın. Bu seçenek, saf Python kodunda hata ayıklamak için en iyi deneyimi sağlar. Çalışan python.exe bir işleme eklediğinizde, bu özellikte belirtilen başlatıcı kullanılır. Bu başlatıcı ayrıca CPython için C/C++ kodu ile Python kodu arasında sorunsuz bir şekilde adım atabileceğiniz karma mod hata ayıklaması sağlar.
Web başlatıcı Başlatmada varsayılan tarayıcınızı başlatın ve şablonların hata ayıklamasını etkinleştirin. Daha fazla bilgi için Web şablonu hata ayıklama bölümüne bakın.
Django Web başlatıcısı Bir Django ortamı için Web launcher özelliğine aynı davranışı uygulayın. Bu seçeneği yalnızca geriye dönük uyumluluk amacıyla kullanın.
IronPython (.NET) başlatıcısı Yalnızca IronPython ile çalışan ancak C# ve Visual Basic de dahil olmak üzere herhangi bir .NET dil projesi arasında adım atılmasına olanak tanıyan .NET hata ayıklayıcısını kullanın. IronPython'u barındıran çalışan bir .NET işlemine eklerseniz bu başlatıcı kullanılır.

Çalıştırma davranışını tanımlama

Aşağıdaki tabloda, hata ayıklayıcı için çalışan davranışı yapılandırmak üzere ayarlayabileceğiniz özellikler açıklanmaktadır.

Özellik Açıklama
Arama Yolları Visual Studio'da projeniz için kullanılan dosya ve klasör arama yollarını belirtin. Bu değerler, Çözüm Gezgini projenin Arama Yolları düğümünde gösterilen öğelerle eşleşmektedir. Bu iletişim kutusunda arama yollarını belirtebilirsiniz ancak klasörlere göz atabileceğiniz ve yolları otomatik olarak göreli forma dönüştürebileceğiniz Çözüm Gezgini kullanmak daha kolay olabilir.
Betik Bağımsız Değişkenleri Visual Studio'nun betiğinizi başlatmak için kullandığı komuta eklenecek bağımsız değişkenleri tanımlayın ve betiğinizin dosya adından sonra görünür. Değerde listelenen ilk öğe betiğinizde olarak sys.argv[1]kullanılabilir, ikinci öğe olarak sys.argv[2]ve benzeri.
Yorumlayıcı Bağımsız Değişkenleri Betiğinizin adından önce başlatıcı komut satırına eklenecek bağımsız değişkenleri listeleyin. Yaygın bağımsız değişkenler -W ... uyarıları denetlemek, -O programınızı biraz iyileştirmek ve -u verimsiz GÇ kullanmaktır. IronPython kullanıcılarının veya -X:MTAgibi -X:Frames seçenekleri geçirmek -X için bu alanı kullanma olasılığı yüksektir.
Yorumlayıcı Yolu Geçerli ortamla ilişkili yolu geçersiz kılmak için bir yorumlayıcı yolu belirleyin. Bu değer, betiğinizi standart olmayan bir yorumlayıcıyla başlatmak için yararlı olabilir.
Ortam Değişkenleri Formun <NAME>=\<VALUE>girdilerini eklemek için bu özelliği kullanın. Visual Studio bu özellik değerini en son, var olan tüm genel ortam değişkenlerinin üzerine uygular ve ardından PYTHONPATH Arama Yolları ayarına göre ayarlanır. Sonuç olarak, bu ayar bu diğer değişkenlerden herhangi birini el ile geçersiz kılmak için kullanılabilir.

Etkileşimli pencerelerle çalışma

Hata ayıklama oturumu sırasında kullanabileceğiniz iki etkileşimli pencere vardır: standart Visual Studio Anında Penceresi ve Python Hata Ayıklama Etkileşimli penceresi.

Anında penceresini açma

Python ifadelerini hızla değerlendirmek ve çalışan programınızdaki değişkenleri incelemek veya atamak için standart Visual Studio Anında penceresini kullanabilirsiniz. Daha fazla bilgi için bkz . Anlık pencere.

  • Hemen penceresini açmak için Windows>Anında Hatalarını Ayıkla'yı>seçin. Ctrl+Alt+I klavye kısayolunu da kullanabilirsiniz.

Etkileşimli Hata Ayıklama penceresini açma

Python Hata Ayıklama Etkileşimli penceresi, kod yazma ve çalıştırma dahil olmak üzere hata ayıklama sırasında kullanılabilen tam Etkileşimli REPL deneyimine sahip zengin bir ortam sunar. Bu pencere, Hata Ayıklama İşleme Ekleme aracılığıyla eklenen işlemler de dahil olmak üzere Standart Python başlatıcısı kullanılarak hata ayıklayıcıda>başlatılan tüm işlemlere otomatik olarak bağlanır. Ancak, karma mod C/C++ hata ayıklaması kullanılırken bu pencere kullanılamaz.

  • Etkileşimli Hata Ayıklama penceresini kullanmak için Hata Ayıklama Windows>Python Hata Ayıklama>Etkileşimli (Shift+Alt+I) seçeneğini belirleyin.

    Visual Studio'da Python Hata Ayıklama Etkileşimli penceresiyle çalışmayı gösteren ekran görüntüsü.

Hata Ayıklama Etkileşimli penceresi, aşağıdaki tabloda açıklandığı gibi standart REPL komutlarına ek olarak özel meta komutları destekler:

Komut Açıklama
$continue, $cont, $c Programı geçerli deyimden çalıştırmaya başlayın.
$down, $d Geçerli çerçeveyi yığın izlemesinde bir düzey aşağı taşıyın.
$frame Geçerli çerçeve kimliğini görüntüleyin.
$frame Geçerli çerçeveyi belirtilen çerçeve kimliğine getirin.
- Çerçeve <kimliği> bağımsız değişkeni gerektirir.
$load Dosyadan komutları yükleyin ve tamamlanana kadar yürütülür.
$proc Geçerli işlem kimliğini görüntüleyin.
$proc Geçerli işlemi belirtilen işlem kimliğine değiştirin.
- İşlem kimliği> bağımsız değişkeni gerektirir<.
$procs Şu anda hata ayıklanan işlemleri listeleyin.
$stepin, $step, $s Mümkünse bir sonraki işlev çağrısına geçin.
$stepout, $return, $r Geçerli işlevden çıkın.
$stepover, $until, $unt Sonraki işlev çağrısının üzerinden geçin.
$thread Geçerli iş parçacığı kimliğini görüntüleyin.
$thread Geçerli iş parçacığını belirtilen iş parçacığı kimliğine geçin.
- İş <parçacığı kimliği> bağımsız değişkeni gerektirir.
$threads Şu anda hata ayıklanan iş parçacıklarını listeleyin.
$up, $u Geçerli çerçeveyi yığın izlemesinde bir düzey yukarı taşıyın.
$where, $w, $bt Geçerli iş parçacığının çerçevelerini listeleyin.

İşlemler, İş Parçacıkları ve Çağrı Yığını gibi standart hata ayıklayıcı pencereleri, Hata Ayıklama Etkileşimli penceresiyle eşitlenmez. Etkileşimli Hata Ayıklama penceresinde etkin işlemi, iş parçacığını veya çerçeveyi değiştirirseniz, diğer hata ayıklayıcı pencereleri etkilenmez. Benzer şekilde, diğer hata ayıklayıcı pencerelerindeki etkin işlemi, iş parçacığını veya çerçeveyi değiştirmek, Etkileşimli Hata Ayıklama penceresini etkilemez.

Eski hata ayıklayıcısını kullanma

Ortam yapılandırmanıza bağlı olarak eski hata ayıklayıcısını kullanmanız gerekebilir:

  • Python 2.6, 3.1 - 3.4 veya IronPython ile Visual Studio 2017 sürüm 15.7 ve öncesi
  • Python 2.6, 3.1 - 3.4 veya IronPython ile Visual Studio 2019 sürüm 16.5 ve üzeri
  • ptvsd 3.x ve erken 4.x sürümleri

Eski hata ayıklayıcı, Visual Studio 2017 sürüm 15.7 ve önceki sürümlerde varsayılandır.

  • Eski hata ayıklayıcıyı kullanmak için Araçlar>Seçenekleri'ni seçin, Python>Hata Ayıklama seçeneklerini genişletin ve Eski hata ayıklayıcıyı kullan seçeneğini belirleyin.

Eski Visual Studio veya Python sürümlerini destekleme

Visual Studio 2017 sürüm 15.8 ve üzeri ptvsd sürüm 4.1 ve üzerini temel alan bir hata ayıklayıcı kullanır. Visual Studio 2019 sürüm 16.5 ve üzeri, hata ayıklamaya dayalı bir hata ayıklayıcı kullanır. Hata ayıklayıcının bu iki sürümü Python 2.7 veya Python 3.5 ve üzeri ile uyumludur.

Visual Studio'nun bu sürümlerinden birini çalıştırıyorsanız ancak Python 2.6, 3.1 - 3.4 veya IronPython kullanıyorsanız, Visual Studio şu hatayı gösterir: Hata Ayıklayıcı bu Python ortamını desteklemiyor:

'Hata ayıklayıcısı bu Python ortamını desteklemiyor' hata ayıklayıcısı hata iletisinin ekran görüntüsü.

Visual Studio bu ortam hatasını bildirdiğinde eski hata ayıklayıcısını kullanmanız gerekir.

Eski ptvsd sürümlerini destekleme

Geçerli ortamda ptvsd'nin eski bir sürümünü kullanıyorsanız (örneğin, önceki bir 4.0.x sürümü veya uzaktan hata ayıklama için gereken 3.x sürümü), Visual Studio bir hata veya uyarı gösterebilir.

Ortamınız ptvsd 3.x kullanıyorsa, Visual Studio hata ayıklayıcısı paketi yüklenemedi hatasını gösterir:

'Hata ayıklayıcısı paketi yüklenemedi' hata ayıklayıcısı hata iletisinin ekran görüntüsü.

Ptvsd'nin önceki bir 4.x sürümünü kullandığınızda Hata Ayıklayıcı paketi güncel değil uyarısı görüntülenir:

'Hata ayıklayıcısı paketi eski' hata ayıklayıcısı uyarı iletisinin ekran görüntüsü.

Visual Studio bu ortam hatalarını bildirdiğinde eski hata ayıklayıcısını kullanmanız gerekir.

Önemli

Bazı ptvsd sürümleri için uyarıyı yoksaymayı tercih edebilirsiniz ancak Visual Studio düzgün çalışmayabilir.

ptvsd yüklemenizi yönetme

ptvsd yüklemenizi yönetmek için şu adımları izleyin:

  1. Python Ortamları penceresinde Paketler sekmesine gidin.

  2. Arama kutusuna ptvsd yazın ve ptvsd'nin yüklü sürümünü inceleyin:

    Python Ortamları penceresinde ptvsd sürümünün nasıl denetlendiğini gösteren ekran görüntüsü.

  3. Sürüm 4.1.1a9'dan düşükse (Visual Studio ile birlikte gelen sürüm), eski sürümü kaldırmak için paketin sağındaki X işaretini seçin. Visual Studio daha sonra paketlenmiş sürümünü kullanır. (Komutunu kullanarak pip uninstall ptvsd PowerShell'den de kaldırabilirsiniz.)

  4. Alternatif olarak, hata ayıklama senaryolarıyla ilgili sorunları giderme bölümündeki yönergeleri izleyerek ptvsd paketini en yeni sürümüne güncelleştirebilirsiniz.

Hata ayıklama senaryolarıyla ilgili sorunları giderme

Aşağıdaki senaryolarda hata ayıklama yapılandırmanız için diğer sorun giderme seçenekleri açıklanmaktadır.

Visual Studio 2019 için ptvsd'ye yükseltme

Visual Studio 2019 sürüm 16.4 ve önceki sürümlerinde hata ayıklayıcıyla ilgili sorunlarınız varsa, önce hata ayıklayıcınızın sürümünü aşağıdaki gibi yükseltin:

  1. Python Ortamları penceresinde Paketler sekmesine gidin.

  2. Arama kutusuna ptvsd --upgrade yazın, ardından Çalıştır komutu: pip install ptvsd --upgrade öğesini seçin. (Aynı komutu PowerShell'den de kullanabilirsiniz.)

    Python Ortamları penceresinde ptvsd yükseltme komutunun nasıl seçildiğini gösteren ekran görüntüsü.

    Sorunlar devam ederse PTVS GitHub deposunda bir sorun oluşturun.

    Not

    Visual Studio 2019 sürüm 16.5 ve üzeri için hata ayıklama, Visual Studio Python iş yükünün bir parçasıdır ve Visual Studio ile birlikte güncelleştirilir.

Hata ayıklayıcı günlüğünü etkinleştirme

Bir hata ayıklayıcı sorununu araştırmak için Microsoft, tanılamaya yardımcı olmak için hata ayıklayıcı günlüklerini etkinleştirmenizi ve toplamanızı isteyebilir.

Aşağıdaki adımlar geçerli Visual Studio oturumunda hata ayıklamayı etkinleştirir:

  1. Diğer Windows>Komut Penceresini Görüntüle'yi>seçerek Visual Studio'da bir komut penceresi açın.

  2. Aşağıdaki komutu girin:

    DebugAdapterHost.Logging /On /OutputWindow
    
  3. Hata ayıklamayı başlatın ve sorununuzu yeniden oluşturmak için gereken adımları izleyin. Bu süre boyunca, hata ayıklama günlükleri Çıktı penceresinde Hata Ayıklama Bağdaştırıcısı Ana Bilgisayar Günlüğü altında görünür. Ardından söz konusu penceredeki günlükleri kopyalayıp GitHub sorununa, e-postaya vb. yapıştırabilirsiniz.

    Visual Studio'da Çıkış penceresinde Hata Ayıklayıcı günlük çıkışını gösteren ekran görüntüsü.

  4. Visual Studio yanıt vermeyi durdurursa veya Çıkış penceresine erişemiyorsanız Visual Studio'yu yeniden başlatın, bir komut penceresi açın ve aşağıdaki komutu girin:

    DebugAdapterHost.Logging /On
    
  5. Hata ayıklamaya başlayın ve sorununuzu yeniden oluşturun. Hata ayıklayıcı günlükleri içinde %temp%\DebugAdapterHostLog.txtbulunur.