web-dev-qa-db-fra.com

Warning as error - Comment les débarrasser

Je n'arrive pas à comprendre comment éliminer les erreurs qui ne devraient en principe pas interrompre ma compilation dans Visual Studio 2010 et ne devraient pas être des bloqueurs d'exposition, ou du moins je les corrigerai plus tard, mais je ne veux pas de compilation. juste erreur et arrêter sur ce genre de problèmes.

Par exemple, j'obtiens l'erreur suivante:

Erreur 1 Avertissement en tant qu'erreur: commentaire XML sur 'ScrewTurn.Wiki.SearchEngine.Relevance.Finalize (float)' a une balise paramref pour 'IsFinalized', mais il n'y a pas de paramètre portant ce nom C:\www\Wiki\Screwturn3_0_2_509\SearchEngine\Relevance.cs 60 70 Moteur de recherche

pour ce code:

  /// <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;
  }

J'ai regardé dans le menu Outils -> Options, et je ne vois pas où je peux modifier le compilateur et lui dire de ne pas s'inquiéter des commentaires ou des erreurs basées sur XHTML.

69
PositiveGuy

Chaque projet dans Visual Studio possède une option "Traiter les avertissements comme des erreurs". Parcourez chacun de vos projets et modifiez ce paramètre:

  1. Faites un clic droit sur votre projet, sélectionnez "Propriétés".
  2. Cliquez sur "Build".
  3. Basculez "Traiter les avertissements comme des erreurs" de "Tous" sur "Avertissements spécifiques" ou "Aucun".

L'emplacement de ce commutateur varie en fonction du type de projet (bibliothèque de classes ou application Web, par exemple).

128
Michael Petrotta

Pour que Visual Studio Express 2013 élimine ces problèmes, vous devez procéder comme suit.

Faites un clic droit sur votre projet, cliquez sur Propriétés. Dans la fenêtre de propriétés, dans les menus de gauche, sélectionnez Propriétés de configuration-> C/C++ -> Général

Dans le côté droit, sélectionnez

Traiter l'avertissement comme une erreur NO

et

Contrôles SDL NON

8
Saleh Enam Shohag

La réponse principale est obsolète pour Visual Studio 2015.

Anglais:

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

Allemand:

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

Ou utilisez cette image comme référence, plus facile à comprendre mentalement rapidement:

 enter image description here

4
lama12345

Pour traiter tous les avertissements du compilateur comme des erreurs de compilation 1) Avec un projet sélectionné dans l'Explorateur de solutions, dans le menu Projet, cliquez sur Propriétés.

2) Cliquez sur l'onglet Compiler. (ou Build Tab peut être là)

3) Cochez la case Traiter tous les avertissements comme des erreurs. (ou sélectionnez le paramètre de construction et définissez les paramètres «Traiter les avertissements comme des erreurs» sur true.)

et si vous voulez vous en débarrasser

Pour désactiver tous les avertissements du compilateur

1) Lorsqu'un projet est sélectionné dans l'Explorateur de solutions, dans le menu Projet, cliquez sur Propriétés.

2) Cliquez sur l'onglet Compiler. (ou Build Tab peut être là)

3) Cochez la case Désactiver tous les avertissements. (ou sélectionnez le paramètre de construction et remplacez les paramètres «Traiter les avertissements comme des erreurs» par faux.) 

1
Alfa Thakkar

Vous pouvez contrôler le comportement dans un en-tête ou un fichier C:

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

encore testé avec Visual studio 2015. J'ai un fichier d'en-tête commun 'compl_adaption.h' pour ce type de choses, inclus dans tous les fichiers, afin de définir ce comportement pour tous mes projets compilés sur visual studio. 

0
Hartmut Schorrig

Dans les propriétés, 

Accédez aux propriétés de configuration. Allez dans C/C++ (ou quelque chose comme ça). Puis cliquez sur Général Dans cette case, décochez la case "Traiter l'avertissement comme étant en erreur".

0
Paroda