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.
Önemli
Visual Studio 2022 sürüm 17.9'dan başlayarak, görselleştiriciler artık yeni VisualStudio.Genişletilebilirlik modeli kullanılarak işlem dışı çalışan .NET 6.0+ dilinde yazılabilir. Yeni model kullanılarak oluşturulan uzantılar için, bunun yerine Visual Studio hata ayıklayıcısı görselleştiricileri oluşturma bağlantısındaki belgelere bakın. Visual Studio'nun eski sürümlerini desteklemeniz gerekiyorsa veya özel görselleştiricilerinizi bir kitaplık DLL'sinin parçası olarak göndermek istiyorsanız, bu makaledeki yalnızca eski uzantı geliştirme modeli (VSSDK) için geçerli olan bilgileri kullanın.
Bu izlenecek yol, Visual Basic kullanarak basit bir görselleştirici yazma adımlarını gösterir. Bu kılavuzda oluşturacağınız görselleştirici, Windows Forms ileti kutusunu kullanarak bir dizenin içeriğini görüntüler. Bu basit dize görselleştiricisi, projeleriniz için daha uygun olan diğer veri türleri için görselleştiricileri nasıl oluşturabileceğinizi gösteren temel bir örnektir.
Uyarı
Gördüğünüz iletişim kutuları ve menü komutları, etkin ayarlarınıza veya sürümünüze bağlı olarak Yardım'da açıklananlardan farklı olabilir. Ayarlarınızı değiştirmek için Araçlar menüsüne gidin ve İçeri ve Dışarı Aktar'ı seçin. Daha fazla bilgi için bkz . Ayarları sıfırlama.
Görselleştirici kodu, hata ayıklayıcı tarafından okunacak bir DLL'ye yerleştirilmelidir. İlk adım, DLL için bir sınıf kitaplığı projesi oluşturmaktır.
Sınıf Kitaplığı Projesi Oluşturma ve Hazırlama
Sınıf kitaplığı projesi oluşturmak için
Yeni bir sınıf kitaplığı projesi oluşturun.
Başlangıç penceresini kapatmak için esc
basın. Arama kutusunu açmak için Ctrl + Q yazın, sınıf kitaplığı yazın ve ardından Visual Basic Sınıf Kitaplığı'nı (.NET Framework) seçin. Başlangıç penceresini kapatmak için esc
basın. Arama kutusunu açmak için Ctrl + Q yazın, visual basic yazın, Şablonlar'ı ve ardından Yeni sınıf kitaplığı oluştur (.NET Framework) öğesini seçin. Sınıf kitaplığı
MyFirstVisualizer
için gibi uygun bir ad yazın ve Oluştur'a veya Tamam'a tıklayın.Sınıf kitaplığını oluşturduğunuzda, burada tanımlanan sınıfları kullanabilmek için Microsoft.VisualStudio.DebuggerVisualizers.DLL bir başvuru eklemeniz gerekir. Ancak ilk olarak projenize anlamlı bir ad verirsiniz.
Class1.vb yeniden adlandırmak ve Microsoft.VisualStudio.DebuggerVisualizers eklemek için
Çözüm Gezgini'ndeClass1.vb sağ tıklayın ve kısayol menüsünde Yeniden Adlandır'a tıklayın.
Class1.vb adını DebuggerSide.vb gibi anlamlı bir adla değiştirin.
Uyarı
Visual Studio, DebuggerSide.vb'daki sınıf bildirimini yeni dosya adıyla eşleşecek şekilde otomatik olarak değiştirir.
Çözüm Gezgini'ndeİlk Görselleştiricim'e sağ tıklayın ve kısayol menüsünde Başvuru Ekle'ye tıklayın.
Başvuru Ekle iletişim kutusunda, Gözat sekmesine gidin, Gözat'ı seçin ve Microsoft.VisualStudio.DebuggerVisualizers.DLL dosyasını bulun.
DLL dosyasını <Visual Studio'nun yükleme dizininin Visual Studio Install Directory>\Common7\IDE\PublicAssemblies alt dizininde bulabilirsiniz.
Tamam'a tıklayın.
DebuggerSide.vb dosyasındaki
Imports
ifadelerine aşağıdaki deyimi ekleyin:Imports Microsoft.VisualStudio.DebuggerVisualizers
Hata Ayıklayıcı Tarafı Kodunu Ekleme
Artık hata ayıklayıcı tarafı kodunu oluşturmaya hazırsınız. Bu, görselleştirmek istediğiniz bilgileri görüntülemek için hata ayıklayıcısı içinde çalışan koddur. İlk olarak, DebuggerSide
nesnesinin bildirimini, DialogDebuggerVisualizer
temel sınıfından devralması için değiştirmeniz gerekir.
DialogDebuggerVisualizer'dan devralmak için
DebuggerSide.vb'da aşağıdaki kod satırına gidin:
Public Class DebuggerSide
Kodu şu şekilde görünecek şekilde düzenleyin:
Public Class DebuggerSide Inherits DialogDebuggerVisualizer
Uyarı
DialogDebuggerVisualizer oluşturucusunda bir
FormatterPolicy
bağımsız değişken bekler. Ancak Visual Studio 2022 sürüm 17.11'den başlayarak .NET 5.0+ için özel hata ayıklayıcısı tarafında dikkat edilmesi gerekenler bölümünde açıklanan güvenlik sorunları nedeniyle görselleştiriciler biçimlendirici ilkesini belirtemezLegacy
.DialogDebuggerVisualizer
geçersiz kılmanız gereken bir soyut yöntemiShow
vardır.
DialogDebuggerVisualizer.Show yöntemini geçersiz kılmak için
içine
public class DebuggerSide
aşağıdaki yöntemi ekleyin:Protected Overrides Sub Show(ByVal windowService As Microsoft.VisualStudio.DebuggerVisualizers.IDialogVisualizerService, ByVal objectProvider As Microsoft.VisualStudio.DebuggerVisualizers.IVisualizerObjectProvider) End Sub
Show
yöntemi, görselleştirici iletişim kutusunu veya başka bir kullanıcı arabirimini oluşturan kodu içerir ve hata ayıklayıcıdan görselleştiriciye geçirilen bilgileri görüntüler. İletişim kutusunu oluşturan ve bilgileri görüntüleyen kodu eklemeniz gerekir. Bu kılavuzda, bunu bir Windows Forms ileti kutusu kullanarak yapacaksınız. İlk olarak,Imports
için bir başvuru ve System.Windows.Forms deyimi eklemeniz gerekir.
System.Windows.Forms eklemek için
Çözüm Gezgini'ndeBaşvurular'a sağ tıklayın ve kısayol menüsünde Başvuru Ekle'ye tıklayın.
Başvuru Ekle iletişim kutusundaki Gözat sekmesindeGözat'ı seçin ve System.Windows.Forms.DLL bulun.
DLL dosyasını C:\Windows\Microsoft.NET\Framework\v4.0.30319 konumunda bulabilirsiniz.
Tamam'a tıklayın.
DebuggerSide.cs dosyasındaki
Imports
deyimine aşağıdaki ifadeyi ekleyin:Imports System.Windows.Forms
Görselleştiricinizin Kullanıcı Arabirimini Oluşturma
Şimdi görselleştiricinizin kullanıcı arabirimini oluşturmak ve göstermek için bazı kodlar ekleyeceksiniz. Bu ilk görselleştiriciniz olduğundan, kullanıcı arabirimini basit tutar ve bir İleti Kutusu kullanırsınız.
İletişim kutusunda görselleştirici çıktısını göstermek için
yöntemine
Show
aşağıdaki kod satırını ekleyin:MessageBox.Show(objectProvider.GetObject().ToString())
Bu örnek kod, hata işlemeyi içermez. Hata işlemeyi gerçek bir görselleştiriciye veya başka bir uygulama türüne eklemeniz gerekir.
Oluştur menüsünde MyFirstVisualizer Oluştur'a tıklayın. Proje başarıyla tamamlanmalıdır. Devam etmeden önce derleme hatalarını düzeltin.
Gerekli Özniteliği Ekleme
Bu, hata ayıklayıcı tarafı kodunun sonudur. Ancak bir adım daha vardır: debuggee tarafına hangi sınıf koleksiyonunun görselleştiriciyi içerdiğini belirten öznitelik.
Hata ayıklanan tarafın kodunu görselleştirmek için tür ekleme
Hata ayıklayıcı tarafı kodunda, debug edilen program için görselleştirilecek türü belirtmek üzere DebuggerVisualizerAttribute özniteliğini kullanırsınız.
Target
özelliği, görselleştirmek için türünü ayarlar.
Imports
ifadelerinden sonra ancaknamespace MyFirstVisualizer
ifadelerinden önce, DebuggerSide.vb dosyasına aşağıdaki öznitelik kodunu ekleyin.<Assembly: System.Diagnostics.DebuggerVisualizer(GetType(MyFirstVisualizer.DebuggerSide), GetType(VisualizerObjectSource), Target:=GetType(System.String), Description:="My First Visualizer")>
Oluştur menüsünde MyFirstVisualizer Oluştur'a tıklayın. Proje başarıyla tamamlanmalıdır. Devam etmeden önce derleme hatalarını düzeltin.
Test Koşumu Oluşturma
Bu noktada, ilk görselleştiriciniz tamamlanmıştır. Adımları doğru izlediyseniz görselleştiriciyi derleyebilir ve Visual Studio'ya yükleyebilirsiniz. Ancak Visual Studio'ya bir görselleştirici yüklemeden önce, doğru çalıştığından emin olmak için bunu test etmelisiniz. Şimdi görselleştiriciyi Visual Studio'ya yüklemeden çalıştırmak için bir test düzeneği oluşturacaksınız.
Görselleştiriciyi göstermek için bir test yöntemi eklemek için
sınıfına
public DebuggerSide
aşağıdaki yöntemi ekleyin:Shared Public Sub TestShowVisualizer(ByVal objectToVisualize As Object) Dim visualizerHost As New VisualizerDevelopmentHost(objectToVisualize, GetType(DebuggerSide)) visualizerHost.ShowVisualizer() End Sub
Oluştur menüsünde MyFirstVisualizer Oluştur'a tıklayın. Proje başarıyla tamamlanmalıdır. Devam etmeden önce derleme hatalarını düzeltin.
Ardından, görselleştirici DLL'nizi çağırmak için yürütülebilir bir proje oluşturmanız gerekir. Kolaylık olması için konsol uygulaması projesi kullanın.
Çözüme konsol uygulaması projesi eklemek için
Çözüm Gezgini'nde çözüme sağ tıklayın, Ekle'yi seçin ve ardından Yeni Proje'ye tıklayın.
Arama kutusuna visual basic yazın, Şablonlar'ı ve ardından Yeni Konsol Uygulaması (.NET Framework) oluştur'u seçin. Görüntülenen iletişim kutusunda Oluştur'i seçin.
Sınıf kitaplığı
MyTestConsole
için gibi uygun bir ad yazın ve Oluştur'a veya Tamam'a tıklayın.Şimdi, MyTestConsole'un MyFirstVisualizer'ı çağırabilmesi için gerekli başvuruları eklemeniz gerekir.
MyTestConsole'a gerekli başvuruları eklemek için
Çözüm Gezgini'ndeMyTestConsole öğesine sağ tıklayın ve kısayol menüsünde Başvuru Ekle'ye tıklayın.
Başvuru Ekle iletişim kutusundaki Gözat sekmesinde Microsoft.VisualStudio.DebuggerVisualizers'a tıklayın.
Tamam'a tıklayın.
MyTestConsole öğesine sağ tıklayın ve sonra yeniden Başvuru Ekle'ye tıklayın.
Başvuru Ekle iletişim kutusunda Projeler sekmesine tıklayın ve ardından MyFirstVisualizer'ı seçin.
Tamam'a tıklayın.
Test Ortamınızı Tamamlayın ve Görselleştiricinizi Test Edin
Şimdi test altyapısını tamamlamak için kodu ekleyeceksiniz.
MyTestConsole'a kod eklemek için
Çözüm Gezgini'ndeProgram.vb sağ tıklayın ve kısayol menüsünde Yeniden Adlandır'a tıklayın.
Module1.vb adını TestConsole.vb gibi uygun bir adla düzenleyin.
Visual Studio'nın TestConsole.vb'daki sınıf bildirimini yeni dosya adıyla eşleşecek şekilde otomatik olarak değiştirdiğini fark edin.
TestConsole'da. vb, aşağıdaki
Imports
deyimi ekleyin:Imports MyFirstVisualizer
yönteminde
Main
aşağıdaki kodu ekleyin:Dim myString As String = "Hello, World" DebuggerSide.TestShowVisualizer(myString)
Artık ilk görselleştiricinizi test etmeye hazırsınız.
Görselleştiriciyi test etmek için
Çözüm Gezgini'ndeMyTestConsole öğesine sağ tıklayın ve kısayol menüsünde Başlangıç Projesi Olarak Ayarla'ya tıklayın.
Hata Ayıklama menüsündeBaşlat'a tıklayın.
Konsol uygulaması başlatılır. Görselleştirici görüntülenir ve "Hello, World" dizesini görüntüler.
Tebrikler. İlk görselleştiricinizi oluşturup test etmişsiniz.
Görselleştiricinizi yalnızca test düzeninden çağırmak yerine Visual Studio'da kullanmak istiyorsanız, yüklemeniz gerekir. Daha fazla bilgi için bkz . Nasıl yapılır: Görselleştirici Yükleme.