Vous pouvez également utiliser #pragma comment(lib...) pour spécifier les options de l'éditeur de liens dans Microsoft C++

Traductions disponibles Traductions disponibles
Numéro d'article: 153901 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Symptômes

Le pragma commentaire permet à l'utilisateur d'insérer des commentaires dans un fichier exécutable ou un fichier de l'objet. Le spécificateur de lib permet à l'utilisateur de passer ce commentaire à l'éditeur de liens pour spécifier des bibliothèques supplémentaires à lier lorsque vous utilisez le module objet. Certains utilisateurs utilisent le pragma commentaire lib pour ajouter des options de l'éditeur de liens ainsi que les noms de bibliothèques, telles que :
   #pragma comment(lib, "MSVCRT -VERBOSE")
				
Cette ligne, sous Visual C++ 2.x, transmettez la chaîne à l'éditeur de liens comme, ce qui entraîne l'ajout de la /VERBOSE option éditeur de liens, ainsi que le MSVCRT.Bibliothèque de LIB. Ce comportement n'a pas été spécifié pour travailler de cette manière. Le compilateur n'aurait pas mettre une chaîne de commentaire, entre guillemets afin qu'espaces seraient délimiter le texte.

Dans Visual C++ 4.x et version ultérieure, le compilateur place correctement des guillemets autour de la chaîne de commentaire provoquant ainsi le code ci-dessus pour générer l'erreur suivante :
LINK : erreur irrécupérable LNK1104 : Impossible d'ouvrir le fichier « MSVCRT-VERBOSE.lib »

Résolution

Utilisez le pragma nouveau suivant pour spécifier les options de l'éditeur de liens :
#pragma comment(linker, "<linker options>")
				

Statut

Ce comportement est voulu par la conception.

Plus d'informations

Exemples de code pour reproduire le problème :

// Compile options needed: none
// Compile the code in Visual C++ 4.x or later
// test.c

#pragma comment(lib,"MYLIBRARY -VERBOSE")

void main(void)
{
}
				
Vous recevrez le message d'erreur suivant :
LINK : erreur irrécupérable LNK1104 : Impossible d'ouvrir le fichier "MYLIBRARY-VERBOSE.lib »

Références

Pour plus d'informations sur les directives #pragma, consultez le site Web MSDN suivant :
Les directives pragma contenues

Propriétés

Numéro d'article: 153901 - Dernière mise à jour: mardi 29 octobre 2013 - Version: 5.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Visual C++ 4.0 Édition Standard
Mots-clés : 
kbcompiler kbprb kbusage kbmt KB153901 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d?une traduction incorrecte du contenu ou de son utilisation par les clients.
La version anglaise de cet article est la suivante: 153901
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Exclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com