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

Visual C++ Discussion :

Executable utilisant des DLLs et des LIB


Sujet :

Visual C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 213
    Points : 58
    Points
    58
    Par défaut Executable utilisant des DLLs et des LIB
    Voila je souhaiterai que l'on m'ouvre les yeux sur quelques trucs...

    Voila j'ai un projet MFC qui utilise des fonctions dévelloppées dans un projet de type Win32 Static Library.

    J'ai donc ds mon repertoire courant un .exe et un .lib.

    Je souhaite utiliser cet executable sur un autre ordinateur n'ayant pas forcement Visual C++.

    Donc, apres utilisation du logiciel DEPENDS.EXE fourni par Windows, j'ai obtenu la liste des DLLS utilisées par mon .exe.

    Donc si je transporte mon executable sur un autre ordinateur, je dois donc placer ces DLLs dans le dossier System32.

    Mais mon executable aura t il acces à mon .lib?

    Faut il que je modifie des parametres de configurations ds mon projet sous visual?

  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    tu n'as pas besoin du .lib sur les autres machines, regarde ici http://c.developpez.com/faq/vc/?page...stributeMFCApp

  3. #3
    mat.M
    Invité(e)
    Par défaut
    Aaargh les fichiers lib sont liés à la compilation pas lors de l'exécution.
    Tu ne peux pas charger un fichier lib en execution d'ou l'intérêt des dll

  4. #4
    Membre habitué
    Inscrit en
    Janvier 2005
    Messages
    460
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Janvier 2005
    Messages : 460
    Points : 145
    Points
    145
    Par défaut
    les .lib te servent juste pour la compilation, ton .exe contiendra toutes les références nécessaires.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 213
    Points : 58
    Points
    58
    Par défaut
    Bon alors,

    j'ai copié mon executable et les DLLs (ds System32) sur un autre PC. De type Windows XP. Pas de probleme, fonctionnement souhaité.

    Par contre, j'ai effectué la meme opération sur un autre ordinateur Windows 2000 et là l'executable ne se lance pas.

    Ce que je ne comprends pas. De plus mon executable est issu de visual c++6.0 d'un Windows 2000.

    C pas simple!!!!

  6. #6
    Membre habitué
    Inscrit en
    Janvier 2005
    Messages
    460
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Janvier 2005
    Messages : 460
    Points : 145
    Points
    145
    Par défaut
    es tu sûr d'avoir générer en mode release ?

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 213
    Points : 58
    Points
    58
    Par défaut
    Je reprends mon probleme

    -> j'ai bien compilé en mode release
    -> j'ai utilisé Depends.exe pour connaître les DLLs nécessaires
    -> j'ai copié ces dernières dans System32
    -> j'ai télechargé vcredist.exe comme indiqué dans la FAQ et ds différents post mais déja premiere probleme. Rien ne se passe qd je double clique sur l'exe, je ne vois rien appaître.

    De plus j'avais ecris il y a quelques temps que cela fonctionner sur XP. Ce n'est pas vraiment le cas, cela a fonctionné sur cet ordinateur car j'avais eu peu de temps avant Visual studio installé dessus. L'envirronement a du préserver certains éléments nécessaires au bon déroulement de l'exe.

    Voila je ss un peu perdu, je tourne en rond et je n'avance pas d'un brin,
    je ss près à étudier toutes solutions

    Merci d'avance

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 213
    Points : 58
    Points
    58
    Par défaut
    J'ai tjrs pas résolu ce probleme et je ne sais plus koi faire...

  9. #9
    Membre habitué
    Inscrit en
    Avril 2004
    Messages
    122
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 122
    Points : 138
    Points
    138
    Par défaut
    As-tu un message d'erreur quelconque ???
    Au lieu de mettre tes DLL dans system32, essaie de les mettre dans ton répertoire d'installation pour voir et si ça ne marche toujours pas, donne la liste des DLL qui sont liées à ton projet.
    Et puis sur le poste ou ça ne fonctionne pas, tu peux faire un depends sur ton exe et voir ce qui ne convient pas.

Discussions similaires

  1. Réponses: 5
    Dernier message: 04/05/2009, 14h54
  2. [DLL] Remplacer des DLL système
    Par tbdarkspirit dans le forum Sécurité
    Réponses: 3
    Dernier message: 21/06/2007, 16h14
  3. Des DLL et des references
    Par Invité dans le forum Visual C++
    Réponses: 2
    Dernier message: 21/04/2007, 10h25
  4. Utilisation du Enable avec des combobox ou des listbox
    Par legos dans le forum VB 6 et antérieur
    Réponses: 16
    Dernier message: 19/09/2006, 22h35
  5. Réponses: 2
    Dernier message: 27/04/2006, 16h45

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