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

MFC Discussion :

[VS 2005] Compilation avec DLL impossible


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut [VS 2005] Compilation avec DLL impossible
    Bonjour,

    Après de nombreuses galères avec VS 2005 je m en remet à vous...
    Je suis complète débutante avec VS et j'ai besoin d'utiliser une API uniquement dispo en C/C++

    J'ai ouvert des samples de l'API j'ai tout essayé impossible à compiler ... enfin surtout pour à linker. A vrai dire je comprends vraiment rien à VS qui me semble plus compliquer le C++ qu'autres choses surtout niveau portabilité et compatibilité. Enfin bref je m en remets à vous parce que je larguée ...

    Voila l'erreur que j'ai
    Error 1 error LNK2001: unresolved external symbol "__declspec(dllimport) public: void __thiscall CRecImageFile::SetFileName(wchar_t const *)" (__imp_?SetFileName@CRecImageFile@@QAEXPB_W@Z) TestOmniPage.obj

    J'ai bien inclus les headers et ajouté la lib.
    Je crois que l'API a été testé et validé pour VS 7 y a t il un moyen de la faire marcher sous VS 8 car je n'ai que ca sous la main ... ?

    Merci pour tout éclaircissement sur cette science obscure qu'est pour moi VS

    Julie.

  2. #2
    Membre du Club Avatar de Seandest
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Doubs (Franche Comté)

    Informations forums :
    Inscription : Avril 2006
    Messages : 54
    Points : 67
    Points
    67
    Par défaut
    Salut, dans les options de ton projet et de ton linker tu as bien ajouté la librairie ? ou tu la juste ajouté dans le répertoire ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Oui j'ai bien ajouté la librairie dans les propriétés du projet.

    Julie.

  4. #4
    Membre du Club Avatar de Seandest
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    54
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Doubs (Franche Comté)

    Informations forums :
    Inscription : Avril 2006
    Messages : 54
    Points : 67
    Points
    67
    Par défaut
    Tsa, il manquerait pas une DLL plutôt ?

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Je ne crois pas mais comment en être sûr ?

    J'ai vérifié, j'inclue ma lib elle est bien présente dans mon rep lib que j'ai ajouté dans les propriétés du proj, et ma dll est dans un repertoire qui est dans le PATH ... Il me semble que tout est correct...

    Julie.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Apparemment c'est une erreur connue sur MSDN

    http://support.microsoft.com/default...en-us%3B309801

    Cependant ca ne marche tout de même pas

    Julie.

  7. #7
    Membre expert
    Avatar de hiko-seijuro
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 011
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 011
    Points : 3 065
    Points
    3 065
    Par défaut
    question con ! la dll c'est toi qui l'a faite ? est ce la méthode SetFileName à bien été
    implémentée ?
    pour la msdn ce n'est pas la même erreur :s
    Hiko-seijuro

    n'cha - hoyoyo gang

    espace perso : http://hiko-seijuro.developpez.com
    dernier tuto : Introduction à l'éditeur de texte Emacs sous linux
    consulter les faqs : http://www.developpez.com/faq
    PAS DE QUESTIONS TECHNIQUES PAR MP OU MAIL

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Oui je viens de voir que ct pas la même

    Et non je n'ai pas implémenté la dll c'est un API fournit et payante, j'essaie de lancer les Samples apparemment la dll a été faites sous VS 7

    Julie.

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    En fait l'erreur suivante :

    Error 73 error LNK2019: unresolved external symbol "__declspec(dllimport) public: class ATL::CStringT<char,class StrTraitMFC_DLL<char,class ATL::ChTraitsCRT<char> > > __thiscall CRecZone::GetDictionarySection(void)" (__imp_?GetDictionarySection@CRecZone...TL@@@@@ATL@@XZ) referenced in function "void __cdecl RecSample24(void)" (?RecSample24@@YAXXZ) SAMPLX24.obj


    semble correspondre avec celle identifié sur msdn plus haut pourtant après application de leur méthode aucun changement

    Julie.

  10. #10
    r0d
    r0d est déconnecté
    Expert éminent

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 264
    Points : 6 683
    Points
    6 683
    Billets dans le blog
    2
    Par défaut
    Ton projet est-il en mode "unicode"?
    « L'effort par lequel toute chose tend à persévérer dans son être n'est rien de plus que l'essence actuelle de cette chose. »
    Spinoza — Éthique III, Proposition VII

  11. #11
    Membre éprouvé
    Avatar de Gabrielly
    Inscrit en
    Juin 2004
    Messages
    722
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 722
    Points : 1 128
    Points
    1 128
    Par défaut
    Pour passer au mode ANSI (ie non UNICODE) Sous VS 2005, faire un clique droit sur le projet > Propriétés> Général > Character Set > Not Set.

  12. #12
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Bon apparemment passé en Not set j'ai l'une des deux versions qui compile par contre j'ai un problème de dll introuvable au moment du chargement

    MFC42D.dll


    Merci,

    Julie.

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Il me manque une serie de dll comme

    MFC42D.dll
    MSVCRTD.dll
    MFCO42.dll

    J'ai essayé de les telecharger mais après j'ai une erreur d'ordinal ...

    Je pense que ce problème vient du fait que les dll de l'API que j'utilise proviennent de Microsoft Visual C/C++ version 7.0
    N'y aurait t il pas une solution ?

    Merci,

    Julie.

  14. #14
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    J'ai une petite question :

    Est ce que des dll peuvent ne pas être compatible avec la dernière version de Visual ou bien ce sont seulement les headers qui peuvent créer des problèmes de compatibilités ?

    Merci

    Julie.

  15. #15
    Membre actif Avatar de lenouvo
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 252
    Points : 203
    Points
    203
    Par défaut
    les dll que tu cites;
    MFC42D.dll
    MSVCRTD.dll
    MFCO42.dll
    tu a reussi à les avoir et ca ne marche pas ou bien tu n'a pas réussi à les avoir?
    "La vie ne vaut rien, mais rien ne vaut la vie"

  16. #16
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 752
    Points : 10 682
    Points
    10 682
    Billets dans le blog
    3
    Par défaut
    Vu que la dll utilise ATL, je pense qu'elle est spécifique à la version du compilo utilisé pour la compiler, c.a.d VC++ 7.
    MFC42, c'est VC++ 6.

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Oui j'ai téléchargé les dll mais j'avais un problème d'ordinal.
    Du coup j'ai recommencé un nouveau problème où j'ai choisi l'options ajouter des headers ATL et MFC maintenant ca marche ...
    J'avoue que tout ca reste assez obscur pour moi ...

    Merci

    Julie.

Discussions similaires

  1. Compilation avec DLL
    Par mulfycrowh dans le forum C++
    Réponses: 10
    Dernier message: 06/08/2010, 08h27
  2. compiler une dll avec visual studio 2005
    Par DebutantVisualStudio dans le forum Visual C++
    Réponses: 6
    Dernier message: 29/07/2009, 13h33
  3. [NxOgre] Impossible de compilé la DLL avec CB
    Par laygen dans le forum Physique
    Réponses: 2
    Dernier message: 31/08/2008, 22h57
  4. pb compil avec Visual 2005
    Par ep31 dans le forum MFC
    Réponses: 3
    Dernier message: 09/02/2006, 16h46
  5. [Delphi 2005 Architect] Liaison DLL avec mon exe
    Par SkYsO dans le forum Langage
    Réponses: 20
    Dernier message: 20/10/2005, 08h33

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