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

Windows Discussion :

Compiler un programme pour windows 98


Sujet :

Windows

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Points : 24
    Points
    24
    Par défaut Compiler un programme pour windows 98
    Bonjour,

    J'ai développé une petite appli en c++ sous vs 2005. Elle tourne parfaitement sous XP mais on m'a informé récemment qu'elle devait également tourner sous 98. Lorsque je la lance sous win98 j'ai des messages d'erreur à propos de dll manquantes. Lorsque je rajoute ces dll, d'autres messages d'erreurs apparaissent. J'ai donc essayé d'installer le framework 2.0 (qui est sensé être compatible sous 98) mais l'installation plante.

    Après de nombreuses autres tentatives du même style suivies d'échecs, j'en ai discuté avec d'autres développeurs de ma boite qui m'ont dit que la seule façon de le faire tourner sous 98 était de le porter sous vs 6. Le problème c'est que j'ai massivement utilisé la stl et sous vs 6 ça ne link pas.

    Je pense que je vais me résoudre à le porter et remplacer tous les morceaux de code utilisant la stl par des fonctions old school mais avant j'aimerais savoir si il n'existerait pas un moyen plus simple.

    Merci d'avance

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Déjà, je dirais modifier la valeur de _WINVER et _WIN32_WINNT pour refléter Windows 98. Corriger toutes les erreurs de compilation que cela cause.
    Ensuite, distribuer l'application avec les DLLs runtime de Visual 2005 (MSVCR80, MSVCP80, MSVCM80) et leur manifeste, dans le même dossier que l'exe. Cela devrait marcher ainsi.
    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 à l'essai
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Points : 24
    Points
    24
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Déjà, je dirais modifier la valeur de _WINVER et _WIN32_WINNT pour refléter Windows 98. Corriger toutes les erreurs de compilation que cela cause.
    Ensuite, distribuer l'application avec les DLLs runtime de Visual 2005 (MSVCR80, MSVCP80, MSVCM80) et leur manifeste, dans le même dossier que l'exe. Cela devrait marcher ainsi.
    Si je me souviens bien, ces macros sont définies quand on crée un projet qui utlise les précompiled header non ? Or dans mon cas le projet sur lequel je bosse ne les utilise pas et je ne vois ces constantes définies nulle part. Suffirait-il que je les rajoute ?

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Normalement, oui. AVANT toute inclusion de header Windows. Voire mieux, sur la ligne de commande (Project Properties -> Configuration properties -> C/C++ -> Preprocessor -> Preprocessor definitions
    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 à l'essai
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Points : 24
    Points
    24
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Normalement, oui. AVANT toute inclusion de header Windows. Voire mieux, sur la ligne de commande (Project Properties -> Configuration properties -> C/C++ -> Preprocessor -> Preprocessor definitions
    J'ai fais tout ce que tu m'as dis ( en fait pour aller plus vite j'ai recréé un petit projet quasiment vide) mais quand je l'exécute il me demande également MSVCR80D.dll. Je l'ai donc rajouté et cette fois-ci je n'ai plus de message d'erreur mais par contre il ne se passe plus rien du tout

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

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Compile en Release, pas en Debug.
    Tu n'as pas le droit de distribuer les versions Debug de la CRT.
    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.

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Points : 24
    Points
    24
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Compile en Release, pas en Debug.
    Tu n'as pas le droit de distribuer les versions Debug de la CRT.
    Youpi ça marche ! Je vais essayer avec le gros projet et je te dis ce qu'il en est

Discussions similaires

  1. Compiler un programme pour Windows avec cygwin.
    Par Luke spywoker dans le forum POSIX
    Réponses: 1
    Dernier message: 10/12/2014, 06h12
  2. Compiler et donner son programme pour windows
    Par troumad dans le forum GTK+ avec C & C++
    Réponses: 0
    Dernier message: 06/11/2010, 09h41
  3. Réponses: 2
    Dernier message: 15/07/2007, 21h03
  4. Programmer pour windows...mouarf!
    Par 5:35pm dans le forum Windows
    Réponses: 5
    Dernier message: 20/04/2006, 09h50
  5. Créer de programme pour WIndows avec Turbo Pascal
    Par kaygee dans le forum Turbo Pascal
    Réponses: 16
    Dernier message: 20/08/2003, 23h22

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