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 :

plantage au remplacement de dll


Sujet :

VC++ .NET

  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 24
    Par défaut plantage au remplacement de dll
    Salut à tous,

    j'ai un légé pb : je développe une appli sous .NET 2003 avec MFC et j'ai une floppée de dll (extention MFC). On est plusieurs a développer chacun sur son ordi et on a une machine de test que lequel visual n'est pas installé.
    Quand l'un de nous compile tout sur son ordi et qu'ensuite, on teste le résultat sur la machine de test, ça marche impec. Si par contre je modifie une des dll (ne serait-ce qu'en rajoutant un 'int a=0' et rien de plus donc modif qui n'engendre aucun pb ou que ce soit) et que je vais remplacer la dll déjà compiler, l'appli plante au démarrage (operation non conforme, envoyer rapport d'erreur...). Si par contre je recompile tout ensemble et que je vais le mettre sur la machine de test, ça marche.
    Est-ce que vous auriez une idée de ce qui peut causer ce phénomène?

    Merci de vos réponses

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 394
    Par défaut
    La DLL est modifiée, donc les points d'entrée changent peut-être.
    Les exécutables sont liés implicitement avec la DLL, donc ils ont sans doute besoin d'être relinkés avec le .lib mis à jour...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 24
    Par défaut
    ben justement, la modif que jai faite est une modif dans l'une des fonctions de la dll, les points d'entrés ne bougent pas et en plus c des fonctions qui ne sont pas appelés au démarrage de l'appli mais que sur certains clique de l'utilisateur et pourtant l'appli plante au lancement.

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 394
    Par défaut
    Si la modif agrandit la fonction, elle déplace toutes les fonctions qui sont après (forcément : on ne fragmente pas une fonction dans une DLL)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    24
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 24
    Par défaut
    que veux-tu dire par 'on ne fragmente pas une fonction dans une dll'?
    Est-ce que cela veut dire que je ne pourrais pas modifier une dll sans recompiler tout le projet? Il doit bien y avoir un moyen de ne recompiler que la dll.

    En tout cas merci pour vos réponses

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 394
    Par défaut
    Ben, ça dépend.

    Si Visual estime qu'il faut régénérer le .lib, c'est qu'il faut re-linker les autres projets avec le nouveau .lib, à mon avis. Recompiler est inutile, mais re-linker peut s'avérer nécessaire.

    Les Dlls COM n'ont pas ce problème, mais elles, ne peuvent être liées qu'explicitement.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. [XL-2007] Plantage excel module VBE6.DLL
    Par Zeph1008 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 16/06/2010, 14h53
  2. Réponses: 6
    Dernier message: 05/12/2008, 21h44
  3. Remplacer une DLL (ADVAPI32.dll) en cours d'utilisation
    Par Marc_3 dans le forum Windows 2000/Me/98/95
    Réponses: 1
    Dernier message: 26/04/2008, 20h02
  4. Plantage sur fermeture avec dll CLI
    Par greenzephyr dans le forum C#
    Réponses: 9
    Dernier message: 31/07/2007, 16h49
  5. [DLL] Remplacer des DLL système
    Par tbdarkspirit dans le forum Sécurité
    Réponses: 3
    Dernier message: 21/06/2007, 16h14

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