cs_pipic
Messages postés50Date d'inscriptionmercredi 11 juin 2003StatutMembreDernière intervention 9 décembre 2003
-
13 août 2003 à 13:02
cs_pipic
Messages postés50Date d'inscriptionmercredi 11 juin 2003StatutMembreDernière intervention 9 décembre 2003
-
13 août 2003 à 17:18
Bonjour à tous
J'ai un gros problème : j'ai terminé une application en visual c++ (MFC) qui fonctionne tres bien sur mon poste (mon pc possède le compilo Mvisual C++)
Cependant dès que j'éxécute mon appli (icone .exe dans le dossier debug et release) sur un autre PC, elle ne fonctionne plus (elle n'appelle pas toutes les classes de mon prog)
J'y comprends rien...
Quand je lance l'icone exe du dossier debug j'ai une erreur de MFC420.dll
Puis quand j'éxécute celui du dossier release elle tourne mais bug au bout d'un moment...
Savez vous d'ou peut venir le pb
J'ai initinialisé les options suivantes :
- not using precompiled headers pour é fichiers cpp
- use MFC in static library
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 20061 13 août 2003 à 14:06
Comme tu as linké les MFC statiquement avec ton programme, tu n'as pas besoin de DLLs supplémentaires pour l'utiliser en mode release. En mode debug tu ne peux pas l'utiliser sur un PC où VC++ n'est pas installé.
Je pense donc qu'il y a une erreur dans ton programme qui passe en mode debug mais pas en mode release.
cs_pipic
Messages postés50Date d'inscriptionmercredi 11 juin 2003StatutMembreDernière intervention 9 décembre 2003 13 août 2003 à 14:27
Je te remercie beaucoup pour ton aide, c'est très gentil
Mais le problème c'est qu'en mode release, mon prog tourne parfaitement sur mon pc, mais il ne fonctionne pas sur un autre qui ne possède pas Visual c++
Dans ce cas est ce que l'erreur vient réellement de mon programme (qui compile pourtant parfaitement) ?
cs_Kaid
Messages postés949Date d'inscriptionmardi 2 octobre 2001StatutMembreDernière intervention 8 juillet 20061 13 août 2003 à 14:37
Quels sont les OS sur les deux machines ? Il peut y avoir un problème si tu utilises des fonctions du noyau NT sur une machine qui tourne sous 9X. Il est aussi possible que tu utilises une fonction assez récente de l'API Win32 qui n'existe pas sur l'autre système.
Sinon, s'il s'agit d'une erreur de programmation (exception non catchée, mémoire, ...) tu peux essayer le programme Rational Purify qui analyse ton programme en debug et y cherche ce genre d'erreurs. Tu peux télécharger une version d'évalution sur kaid.fr.st
cs_pipic
Messages postés50Date d'inscriptionmercredi 11 juin 2003StatutMembreDernière intervention 9 décembre 2003 13 août 2003 à 16:24
Tout d'abord un grand merci pour ton aide
J'utilise WindowsXP sur les 2 machines, le pb ne vient pas d'ici...
Sinon mon compilo est Visual C++ 6
Puis j'ai installé le logiciel que tu m'as conseillé (qui est d'ailleurs tres bien)
Je l'ai executé à partir de mon .exe en mode release sur mon pc et il n'a trouvé aucun pb....
Sincerement je suis perdu et je dois bientot rendre mon appli (qui pourtant marche tres bien sur mon pc)
ByeBye pipic....
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_pipic
Messages postés50Date d'inscriptionmercredi 11 juin 2003StatutMembreDernière intervention 9 décembre 2003 13 août 2003 à 17:18
Effectivement j'ai un avertissement sous Purify, mais j'ai du mal à en comprendre la signification
[W] PAR: Both Debug and non-Debug versions of CRT are active; This may cause CRT heap operations to fail. {1 occurrence}
Call location
DisableThreadLibraryCalls [KERNEL32.dll]