Nasıl yapılır: İzleme ve Hata Ayıklama ile Koşullu Derleme

Geliştirme sırasında bir uygulamada hata ayıklarken, hem izleme hem de hata ayıklama çıkışınız Visual Studio'daki Çıkış penceresine gider. Ancak, dağıtılmış bir uygulamaya izleme özelliklerini eklemek için izlemeli uygulamalarınızı TRACE derleyici yönergesi etkin olarak derlemeniz gerekir. Bu, izleme kodunun uygulamanızın yayın sürümünde derlenmiş olmasını sağlar. TRACE yönergesini etkinleştirmezseniz, derleme sırasında tüm izleme kodu yoksayılır ve dağıtacağınız yürütülebilir koda dahil değildir.

hem izleme hem de hata ayıklama yöntemleri ilişkili koşullu özniteliklere sahiptir. Örneğin, izleme için koşullu öznitelik true ise, tüm izleme deyimleri bir derlemeye (derlenmiş .exe dosyası veya .dll) eklenir; İzleme koşullu özniteliği false ise, izleme deyimleri dahil değildir.

Bir derleme için İzleme veya Hata Ayıklama koşullu özniteliğini etkinleştirebilir ya da ikisini birden etkinleştirebilirsiniz. Bu nedenle, dört tür derleme vardır: Hata Ayıklama, İzleme, her ikisi de veya hiçbiri. Üretim dağıtımına yönelik bazı sürüm derlemeleri hiçbirini içermeyebilir; çoğu hata ayıklama derlemesi her ikisini de içerir.

Uygulamanızın derleyici ayarlarını çeşitli yollarla belirtebilirsiniz:

  • Özellik sayfaları

  • Komut satırı

  • #CONST (Visual Basic için) ve #define (C#için)

Özellik sayfaları iletişim kutusundan derleme ayarlarını değiştirmek için

  1. Çözüm Gezgini proje düğümüne sağ tıklayın.

  2. Kısayol menüsünden Özellikler'i seçin.

    • Visual Basic'te, özellik sayfasının sol bölmesindeki Derle sekmesine tıklayın, ardından Gelişmiş Derleyici Ayarlar iletişim kutusunu görüntülemek için Gelişmiş Derleme Seçenekleri düğmesine tıklayın. Etkinleştirmek istediğiniz derleyici ayarlarının onay kutularını seçin. Devre dışı bırakmak istediğiniz ayarların onay kutularını temizleyin.

    • C# dilinde, özellik sayfasının sol bölmesindeki Oluştur sekmesine tıklayın ve ardından etkinleştirmek istediğiniz derleyici ayarlarının onay kutularını seçin. Devre dışı bırakmak istediğiniz ayarların onay kutularını temizleyin.

Komut satırını kullanarak izlemeli kod derlemek için

  1. Komut satırında koşullu derleyici anahtarı ayarlayın. Derleyici yürütülebilir dosyaya izleme veya hata ayıklama kodu ekler.

    Örneğin, komut satırına girilen aşağıdaki derleyici yönergesi, izleme kodunuzu derlenmiş bir yürütülebilir dosyaya ekler:

    Visual Basic için: vbc -r:System.dll -d:TRACE=TRUE -d:DEBUG=FALSE MyApplication.vb

    C# için: csc -r:System.dll -d:TRACE -d:DEBUG=FALSE MyApplication.cs

    İpucu

    Birden fazla uygulama dosyası derlemek için dosya adları arasında boş bir alan bırakın; örneğin, MyApplication1.vb MyApplication2.vb MyApplication3.vb veya MyApplication1.cs MyApplication2.cs MyApplication3.cs.

    Yukarıdaki örneklerde kullanılan koşullu derleme yönergelerinin anlamı aşağıdaki gibidir:

    Yönerge Anlamı
    vbc Visual Basic derleyici
    csc C# derleyici
    -r: Dış derlemeye (EXE veya DLL) başvurur
    -d: Koşullu derleme simgesi tanımlar

    Not

    TRACE veya DEBUG büyük harflerle yazmalısınız. Koşullu derleme komutları hakkında daha fazla bilgi için komut istemine (Visual Basic için) veya csc /? (C#için) yazın vbc /? . Daha fazla bilgi için bkz . Komut Satırından Oluşturma (C#) veya Komut Satırı Derleyicisini Çağırma (Visual Basic).

#CONST veya #define kullanarak koşullu derleme gerçekleştirmek için

  1. Kaynak kod dosyasının en üstüne programlama diliniz için uygun deyimi yazın.

    Dil Deyim Sonuç
    Visual Basic #CONST TRACE = true İzlemeyi etkinleştirir
    #CONST TRACE = false İzlemeyi devre dışı bırakır
    #CONST DEBUG = true Hata ayıklamayı etkinleştirir
    #CONST DEBUG = false Hata ayıklamayı devre dışı bırakır
    C# İzlemeyi #define İzlemeyi etkinleştirir
    İzlemeyi #undef İzlemeyi devre dışı bırakır
    HATA AYıKLAMA #define Hata ayıklamayı etkinleştirir
    HATA AYıKLAMA #undef Hata ayıklamayı devre dışı bırakır

İzlemeyi veya hata ayıklamayı devre dışı bırakmak için

Kaynak kodunuzdan derleyici yönergesini silin.

- veya -

Derleyici yönergesini açıklama satırına ekleyin.

Not

Derlemeye hazır olduğunuzda, Derleme menüsünden Derle'yi seçebilir veya komut satırı yöntemini kullanabilirsiniz, ancak koşullu derleme simgelerini tanımlamak için d: yazmadan.

Ayrıca bkz.