Hata olarak uyarı - Bunlardan nasıl kurtulurum


93

Temelde Visual Studio 2010'daki derlememi durdurmaması gereken ve gösteri durdurucu olmaması gereken veya en azından onları daha sonra düzelteceğim, ancak derlemenin sadece hata yapmasını istemiyorum ve bu tür sorunları durdurun.

Örneğin, şu hatayı alıyorum:

Hata 1 Hata Olarak Uyarı: 'ScrewTurn.Wiki.SearchEngine.Relevance.Finalize (float)' için XML yorumu 'IsFinalized' için bir paramref etiketine sahip, ancak bu adda bir parametre yok C: \ www \ Wiki \ Screwturn3_0_2_509 \ SearchEngine \ Relevance.cs 60 70 Arama Motoru

bu kod için:

  /// <summary>
  /// Normalizes the relevance after finalization.
  /// </summary>
  /// <param name="factor">The normalization factor.</param>
  /// <exception cref="InvalidOperationException">If <paramref name="IsFinalized"/> is <c>false</c> (<see cref="M:Finalize"/> was not called).</exception>
  public void NormalizeAfterFinalization(float factor) {
      if (factor < 0)
          throw new ArgumentOutOfRangeException("factor", "Factor must be greater than or equal to zero");

      if (!isFinalized)
          throw new InvalidOperationException("Normalization can be performed only after finalization");
      value = value * factor;
  }

Araçlar menüsüne baktım -> Seçenekler ve derleyiciyi nerede değiştirebileceğimi ve yorum veya XHTML tabanlı hatalar konusunda endişelenmemesini söyleyebileceğimi göremiyorum.


13
Sorunun sorduğu "sadece kodu düzeltin" değil.
orfdorf

Yanıtlar:


156

Visual Studio'daki her projenin bir "uyarıları hata olarak işleme" seçeneği vardır. Her bir projenizi gözden geçirin ve bu ayarı değiştirin:

  1. Projenize sağ tıklayın, "Özellikler" i seçin.
  2. "Oluştur" u tıklayın.
  3. "Uyarıları hata olarak değerlendir" seçeneğini "Tümü" nden "Özel uyarılar" veya "Yok" olarak değiştirin.

Bu anahtarın konumu proje türüne bağlı olarak değişir (örneğin, sınıf kitaplığı ve web uygulaması).


1
Bunu saklamak için ne güzel bir yer. Her yere baktım ama proje altında.
nportelli

1
VS2012 için yeni çözümü bilen var mı?
bobble14988

1
VS2012'de aynı çözüm, @ bobble14988.
Michael Petrotta

6
@ bobble14988 VS2012'de bu yapılandırmayı Proje özellikleri-> C / C ++ -> Genel
Hanan

1
VS 2017'nin neden Tümü'nden Yok'a geçişi kabul etmediğini merak ediyorum. Ters çevirdim, her şeyi kaydettim, temizledim, yeniden oluşturdum, VS'den çıktım, temizledim, yeniden oluşturdum, ancak uyarılar hala hata. csproj dosyası falsebu ayar için parlıyor . Bu yanlış nerede ısrar ediyor ??? MS geliştiricilerin hatalara yol açma konusunda üstün yeteneklerini geliştirmeden önce pes ediyorum.
ajeh

13

Visual Studio Express 2013 için bu sorunlardan kurtulmak için aşağıdakileri yapmanız gerekir.

Projenize sağ tıklayın Özellikler'e tıklayın. Sol menülerdeki özellikler penceresinde Konfigürasyon Özellikleri-> C / C ++ -> Genel'i seçin.

Sağ taraftan seçin

Uyarıyı Hata Olarak Değerlendir HAYIR

ve

SDL Kontrolleri YOK


1
Devre dışı bırakma SDL Checksbenim için Visual Studio 2015'te çalıştı. (Hata olarak değerlendirilen bir kullanımdan kaldırma uyarısı aldım)
Kevin Smyth

6

En iyi yanıt için modası geçmiş Visual Studio 2015.

İngilizce:

Configuration Properties -> C/C++ -> General -> Treat Warning As Errors

Almanca:

Konfigurationseigenschaften -> C/C++ -> Allgemein -> Warnungen als Fehler behandeln

Veya bu resmi referans olarak kullanın, konumu zihinsel olarak hızlı bir şekilde bulmanın yolu:

görüntü açıklamasını buraya girin


1

Bir başlık dosyasındaki veya C dosyasındaki davranışı kontrol edebilirsiniz:

#pragma warning(error:4003) //not enough actual parameters for macro

Visual Studio 2015 ile test edildi. Visual Studio'da derlenen tüm projelerim için bu davranışı ayarlamak için tüm dosyalara dahil edilen bu tür şeyler için ortak bir başlık dosyası 'compl_adaption.h' var.


1

Tüm derleyici uyarılarını derleme hataları olarak ele almak için

  1. Çözüm Gezgini'nde seçilen bir proje ile Proje menüsünde Özellikler'e tıklayın.
  2. Derleme sekmesine tıklayın. (veya Oluşturma Sekmesi orada olabilir)
  3. Tüm uyarıları hata olarak değerlendir onay kutusunu seçin. (veya derleme ayarını seçin ve "uyarıları hata olarak ele al" ayarlarını doğru olarak değiştirin.)

ve ondan kurtulmak istiyorsan

Tüm derleyici uyarılarını devre dışı bırakmak için

  1. Çözüm Gezgini'nde seçilen bir proje ile Proje menüsünde Özellikler'e tıklayın.
  2. Derleme sekmesine tıklayın. (veya Oluşturma Sekmesi orada olabilir)
  3. Tüm uyarıları devre dışı bırak onay kutusunu seçin. (veya derleme ayarını seçin ve "uyarıları hata olarak ele al" ayarlarını yanlış olarak değiştirin.)

0

Özellikler'de,

Yapılandırma Özellikleri'ne gidin. Bunda C / C ++ 'ya (veya bunun gibi bir şeye) gidin. , Ardından Genel'i tıklayın, bu "Uyarıyı Hata Olarak Değerlendir" Onay Kutusundaki işareti kaldırın.


0

VS 2019

Sadece VS2019 kullanan kişiler için, diğer cevapların da aynı yeri işaret ettiğini düşünüyorum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.