IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

VC++ .NET Discussion :

probl�me avec un .lib


Sujet :

VC++ .NET

  1. #1
    Membre chevronn�
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2004
    Messages
    539
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Juin 2004
    Messages : 539
    Par d�faut probl�me avec un .lib
    Bonjour,

    j'�cris une application pour g�rer un lecteur de carte � puce. Celui-ci est livr� avec quelques exemples, dont un �crit en C++ pour visual studio 2005.
    Ce programme utilise la librairie winscard.
    Je l'ai test� avec succ�s sous VS2010.

    J'ai voulu cr�er une application console pour tester les fonctions de la librairie. J'ai une erreur de link lorsque j'appelle des fonctions d�finies dans cette librairie.

    J'ai pourtant ajout� winscard.lib dans mon projet, j'ai donn� le chemin d'acc�s dans les d�pendances suppl�mentaire des propri�t�s du projet (bien que dans le projet exemple, il n'y en ait pas besoin).

    Je ne vois plus ce que je peux faire.

    Merci pour vos propositions.

  2. #2
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    J'ai une erreur de link lorsque j'appelle des fonctions d�finies dans cette librairie
    Les erreurs SVP.

    J'ai pourtant ajout� winscard.lib dans mon projet, j'ai donn� le chemin d'acc�s dans les d�pendances suppl�mentaire des propri�t�s du projet (bien que dans le projet exemple, il n'y en ait pas besoin).
    Beaucoup de fautes de vocabulaire, qui peuvent en cacher d'autres.

    On n'ajoute pas une lib � un projet, on l'ajoute aux "D�pendances suppl�mentaires" en entr�e du linker.

    On ne donne pas le "chemin d'acc�s", on configure les "r�pertoires de biblioth�que" des "R�pertoires VC++" pour que cette liste le contienne.

    Et c'est directement dans les propri�t�s de configuration que J'ai indiqu�.

  3. #3
    Membre chevronn�
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2004
    Messages
    539
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Juin 2004
    Messages : 539
    Par d�faut
    merci pour ta r�ponse.

    Beaucoup de fautes de vocabulaire, qui peuvent en cacher d'autres.
    D'accord, je vais essayer d'�tre plus pr�cis

    On n'ajoute pas une lib � un projet
    C'est ce que je pensais en regardant l'explorateur de solution. winscard.lib apparait au bas de la fen�tre de la pi�ce jointe du projet que j'ai r�cup�r�.

    on l'ajoute aux "D�pendances suppl�mentaires" en entr�e du linker.
    J'ai bien ajout� winscard.lib (voir copie d'�cran)

    On ne donne pas le "chemin d'acc�s", on configure les "r�pertoires de biblioth�que" des "R�pertoires VC++" pour que cette liste le contienne.
    J'ai ajout� le dossier de mon projet dans lequel j'ai plac� "winscard.lib

    Les erreurs SVP.
    En voici une, les autres faisant r�f�rence � d'autres fonctions de la librairie:
    "Erreur 10 error LNK2019: symbole externe non r�solu _SCardBeginTransaction@4 r�f�renc� dans la fonction _main C:\Users\Jack\Documents\Visual Studio 2010\Projects\testACR38_console\testACR38_console\testACR38_console.obj"
    Images attach�es Images attach�es   

  4. #4
    Membre �m�rite
    Homme Profil pro
    R&D imagerie 3D / prog embarqu�e
    Inscrit en
    Mars 2007
    Messages
    419
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : R&D imagerie 3D / prog embarqu�e
    Secteur : Sant�

    Informations forums :
    Inscription : Mars 2007
    Messages : 419
    Par d�faut
    Tu as ajout� winscard.lib dans les d�pendances suppl�mentaires, mais as-tu ajouter le chemin vers le dossier qui contient winscard.lib ?

    Tu devrais trouver un champ du genre "dossier des d�pendances additionnelle" (d�sol� chez moi c'est en anglais ) dans la section "g�n�ral" de de ton �diteur de lien. Il faut y ajouter le chemin vers le dossier qui contient winscard.lib.

  5. #5
    Membre chevronn�
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2004
    Messages
    539
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Juin 2004
    Messages : 539
    Par d�faut
    tu veux parler de ceci? Dans ce cas, j'ai bien ajout� le dossier o� se trouve le .lib.

    A+
    Images attach�es Images attach�es  

  6. #6
    Membre �m�rite
    Homme Profil pro
    R&D imagerie 3D / prog embarqu�e
    Inscrit en
    Mars 2007
    Messages
    419
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : R&D imagerie 3D / prog embarqu�e
    Secteur : Sant�

    Informations forums :
    Inscription : Mars 2007
    Messages : 419
    Par d�faut
    Effectivement, je parle bien de �a
    J'imagine que tu as essay� de mettre le chemin absolut... Au cas ou...

    As tu v�rifier si le projet que tu configur� �tait bien celui qui �tait link� pendant que l'erreur se produit ?
    Si oui, tu dois pas avoir la bonne version de winscard.lib.

    Si tu ouvre ta lib dans un �diteur de texte, trouves-tu la cha�ne "_SCardBeginTransaction@4" ? Par exemple, je la trouve dans les versions SDK 6.0A/7.0A, mais pas dans les versions x64/ia64/PocketPC.
    Si oui, est-ce que dumpbin (fourni dans 'install de VC++) te confirme que la lib est compatible avec ton architecture cible ?

  7. #7
    Membre chevronn�
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2004
    Messages
    539
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Juin 2004
    Messages : 539
    Par d�faut
    J'imagine que tu as essay� de mettre le chemin absolut... Au cas ou...
    Oui, il s'agissait bien du chemin absolu (pas moyen de l'afficher au complet dans la fen�tre)

    As tu v�rifier si le projet que tu configur� �tait bien celui qui �tait link� pendant que l'erreur se produit ?
    Oui, ma solution n'en comporte qu'un.

    Si tu ouvre ta lib dans un �diteur de texte, trouves-tu la cha�ne "_SCardBeginTransaction@4" ?
    Oui, on y trouve bien SCardBeginTransaction sans la d�coration (voir copie d'�cran)

    Si oui, est-ce que dumpbin (fourni dans 'install de VC++) te confirme que la lib est compatible avec ton architecture cible ?
    Comme je ne vois pas trop quelle option permet de d�terminer la compatibilit�, j'ai mis l'option /ALL. Le rapport est joint (on y trouve bien � nouveau SCardBeginTransaction en passant).
    Images attach�es Images attach�es  
    Fichiers attach�s Fichiers attach�s

  8. #8
    Membre �m�rite
    Homme Profil pro
    R&D imagerie 3D / prog embarqu�e
    Inscrit en
    Mars 2007
    Messages
    419
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activit� : R&D imagerie 3D / prog embarqu�e
    Secteur : Sant�

    Informations forums :
    Inscription : Mars 2007
    Messages : 419
    Par d�faut
    Citation Envoy� par jackk Voir le message
    Oui, on y trouve bien SCardBeginTransaction sans la d�coration (voir copie d'�cran)
    Si tu le trouves pas avec d�coration, le linker n'a aucun chance d'y arriv�.

    Citation Envoy� par jackk Voir le message
    Comme je ne vois pas trop quelle option permet de d�terminer la compatibilit�, j'ai mis l'option /ALL. Le rapport est joint (on y trouve bien � nouveau SCardBeginTransaction en passant).
    La sortie de dumpbin indique que ta lib est en x64. Tu compiles bien ton code vers x64 ?

  9. #9
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    En plus des remarques de djuju :
    Moi, je vois _SCardBeginTransaction mais pas _SCardBeginTransaction@4, il y a donc tr�s vraisemblablement un probl�me avec les conventions d'appels.
    C'est du _stdcall ou du _cdecl qui doit �tre utilis� ?

    Le header fourni ne le pr�cise peut-�tre pas, et si la valeur par d�faut est diff�rente entre le compilateur ayant g�n�r� la lib et le votre, vous vous prenez ce genre de truc dans la figure.

    Il faut v�rifier dans la documentation

  10. #10
    Membre chevronn�
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2004
    Messages
    539
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Juin 2004
    Messages : 539
    Par d�faut
    Citation Envoy� par djuju Voir le message
    La sortie de dumpbin indique que ta lib est en x64. Tu compiles bien ton code vers x64 ?
    Bravo, c'�tait ��.

    Merci pour tout.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Probl�me avec la lib Esky
    Par netfoot dans le forum Biblioth�ques tierces
    R�ponses: 0
    Dernier message: 02/04/2015, 17h27
  2. probl�me avec CapGetDriverDescriptionA Lib "avicap32.dll"
    Par Mario Rousson dans le forum VB.NET
    R�ponses: 0
    Dernier message: 18/12/2013, 03h11
  3. R�ponses: 15
    Dernier message: 26/02/2009, 01h05
  4. Probl�me avec la lib lti et visual studio 2005
    Par pasqual dans le forum Visual C++
    R�ponses: 3
    Dernier message: 25/11/2008, 16h31
  5. [VS 2008] Probl�me avec Libc.lib
    Par Ange44 dans le forum Visual C++
    R�ponses: 4
    Dernier message: 05/09/2008, 11h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo