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 :

Compilation C++ 8.0 pour cible NT


Sujet :

MFC

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Par défaut Compilation C++ 8.0 pour cible NT
    Bonjour,

    Est-il possible de compiler une application MFC 8.0 sous visual studio 2005 (Win XP) pour quelle soit fonctionnelle sous Win NT 4 ?

    Si oui, quelles sont les règles à respecter ? DLL supplémentaires à fournir ?

    J'ai rapidement essayé en modifiant le stdafx.h sur un projet boite de dialogue mais je ne suis pas parvenu a le faire fonctionner sous NT.

    Merci.

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    essaye plutôt de définir la plateforme cible...
    voir faq: http://cpp.developpez.com/faq/vc/?page=IDE#SetOSVersion
    et regarde l'include targetver.h de ton projet.
    les valeurs sont définies dans MSDN.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Par défaut
    Bonjour,

    Merci pour tes conseils même si je n'ai pas bien compris ce qu'étais le targetver.h !

    Je suis parvenu a effectuer ma compilation (WinXP C++MFC8.0 Visual2005) et exécuter mon prog sous NT4SP4. Voici la procédure que j'ai adopté:
    J'ai modifié le stdafx.h de la sorte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    #ifndef WINVER
    #define WINVER 0x0400
    #endif
     
    #ifndef _WIN32_WINNT
    #define _WIN32_WINNT 0x0400
    #endif						
     
    #ifndef _WIN32_WINDOWS
    #define _WIN32_WINDOWS 0x0400
    #endif
    Et j'ai du modifier les options de ma solution:
    -Utilisation des MFC dans une bibliothèque statique.
    -Génération de code: Bibliothèque runtime = Multithread (/MT)

    J'ai juste fait un projet boite de dialogue vierge (juste 2-3 controles) pour le moment. La suite me réserve peut-être des surprises.

    Par contre j'aimerais savoir la différence entre les définitions :WINVER;_WIN32_WINNT;_WIN32_WINDOWS ...

    Merci

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Par défaut
    En fait j'ai un souci !

    J'utilise des DLL d'extension MFC. Ce type de DLL ne peut être utilisé en statique. Je me pose donc à nouveau la question de savoir si l'on peut utiliser cette application sous NT4 en utilisant des link MFC dynamiques ...

    Lors de mes essais, j'ai ce message d'erreur sous Win NT au lancement du programme:
    "Le point d'entrée de procédure GetLongPathNameW est introuvable dans la bibliothèque de liaisons dynamiques KERNEL32.dll"

    A+

  5. #5
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    tu as distribué les dll MFC avec ton exe ?
    http://cpp.developpez.com/faq/vc/?pa...VC2008VCRedist
    essaye de copier le .exe et ses dépendances dans un seul répertoire.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Par défaut
    Bonjour,

    Malheureusement l'outil vcredist_x86.exe ne fonctionne pas sous NT4SP4 "Ce package d'installation ne peut pas être installé par le service Windows Installer. Vous devez installer un service pack Windows contenant une version plus récente du service windows installer". Mouais .. est-ce possible sans changer de service pack ?

    J'ai également essayé de livrer les dll adéquates (comme précisé dans la FAQ) dans le même répertoire que l'exécutable mais sans succès ...

    Si quelqu'un a déja développé des DLL d'extension MFC sous Win2005 pour NT4 je suis prenneur de la procédure à adopter

    Merci

  7. #7
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    Pour résoudre ce genre de problème j'ai toujours un Visual 6.0 sous le coude...

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 112
    Par défaut
    Solution retenue également !
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de compilation avec dev-c++ pour WIN32 API
    Par ValyGator dans le forum Dev-C++
    Réponses: 2
    Dernier message: 08/01/2007, 14h53
  2. [Kylix] Compiler des sources Delphi pour Linux
    Par Tchief dans le forum EDI
    Réponses: 4
    Dernier message: 09/10/2006, 19h32
  3. Compilation Java avec GCJ pour faire un exe. Pourquoi ?
    Par Claude URBAN dans le forum Général Java
    Réponses: 11
    Dernier message: 17/06/2006, 21h00
  4. Compiler un programme perl pour palteforme Win32
    Par LE NEINDRE dans le forum Modules
    Réponses: 1
    Dernier message: 11/01/2006, 14h27
  5. [Compilation] A quel moment pour une application ?
    Par Rick1602 dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 04/03/2004, 20h36

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