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 :

Modifications d'une MFC


Sujet :

MFC

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut Modifications d'une MFC
    Salut à tous,

    Je viens de modifier le code source d'une MFC de connexion (DAOCORE.CPP) , je souhaiterai savoir comment je peux faire pour que la modification soit prise en compte.
    C'est la première fois que je fais ca donc je ne suis pas trop calé sur ce type de manipulations.

    Merci par avance de votre aide.

    PS : je suis sur VC++ 6.0 dernier Pack

  2. #2
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    ouch ..
    C'est pas simple.
    Mais si tu y tiens
    http://www.trigeminal.com/usenet/usenet034.asp?1033

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut
    Merci je regarde ca.

    Par contre une question, j'ai migré une base Access97 en Access200 et je veus toujours utilisé les mêmes objets de connexion (CDaoDatabase)
    La problème est dès que je veut ouvrir la base il prend pas la bonne version du composants du coup je me trouve avec ue erreur de format de base no reconnu...
    J'ai trouvé une solution que me propose Microsoft, mais le problème est qu'il faut donc ke je modifie le fichier cpp d'une MFC (daocore.cpp) si j'ai bien compris...
    Voila le lien http://support.microsoft.com/kb/236991

    Es ce la bonne solution donc, vu l'ampleur du boulot qu'il y a à faire pour modifier une MFC, de faire cette manipulation. Es ce qu'il me serait pas possible de définir la version de l'objet utilisé en dur lors de l'ouverture de mon objet de connexion.

    Si je n'ai pas était trop clair dit le moi

    Mais ca serait cool si tu pouvais m'aider car je galère pas mal depuis 2 jours sur ce problème.
    Tchouce

  4. #4
    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,
    apres avoir lu la note il me semble clair qu'il est fortement preferable d'utiliser les MFC en dll partagées:
    Citation Envoyé par Msdn
    If you are linking with the MFC DLL, you can specify that you want MFC to use DAO 3.6 by inserting the following line of code before you open an Access 2000 database:

    AfxGetModuleState()->m_dwVersion = 0x0601;

  5. #5
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    arf ..
    Ton lien dit tout ce qu'il faut faire

    Ce que tu dois modifier, comment Recompiler MFC, il te donne la commande ...
    ça devrait aller là ...

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut
    Je sais cela parait simple pour vous mais je galère un peu en VC++ donc c'est pour ca que je vous pose tant de questions. de plus l'anglais est moi c'est une histoire difficile, lol

    J'ai déjà testé le code en déclarant la valeur de de la version à prendre mais j'ai quelques souci avec cette syntaxe, bref je vais faire des tests et je reviens vers vous si jamais, en tout cas merci.

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut
    Re question ???
    Sur La premère solution de la note de Microsoft, je n'arrive pas insérer dans mon code le code suivant ...
    AfxGetModuleState()->m_dwVersion = 0x0601;

    Il y a t-il une déclaration on initilisation précise à faire ??

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut
    J'ai l'erreur suivante...
    c:\travail\pr35h\newkernel\nettache.h(322) : error C2039: 'm_dwVersion' : is not a member of 'AFX_MODULE_STATE'
    c:\program files\microsoft visual studio\vc98\mfc\include\afxstat_.h(191) : see declaration of 'AFX_MODULE_STATE'

    et pourtant c'est le code qu'il y a sur la note de Microsoft

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut
    Les experts du VC++ aidez please
    Si ca se trouve c'est juste une broutille..
    HELP

  10. #10
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Il y a deux manières de faire selon que tu utilises MFC en static ou en DLL partagées.
    Ton projet utilise laquelle de ces deux options?
    On verra la suite après.

  11. #11
    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
    vu la note il serait preferable d'etre en DLL partagées ,plus simple .

  12. #12
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 11
    Par défaut
    J'ai trouvé la soluce
    Voila comment j'ai fait si ca intéresse quelqu'un....
    - Modifications d'une MFC (fichier .ccp dans le repertoire VC98\MFC\SRC,
    - Copie du fichier vcvars32.bat dans le répertoire de la MFC,
    - lancement de l'invite de commande Démarrer Exécuter cmd (sous W2000),
    - positionnement dans le répertoire SRC avec la commande cd,
    - lancement du point vcvars32.bat,
    - écriture d'un fichier batch dans le même répertoire avec
    nmake DEBUG=1 (+ mes options de compilation du projet) et une autre ligne
    avec nmake RELEASE=1,
    - Réouverture de mon projet en VC++,
    - et hop ca fonctionne.

    Vraiment merci pour votre aide et celle de Microsoft bien sur ;-)
    A+++

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

Discussions similaires

  1. [DB2]Modification d'une colonne
    Par ahoyeau dans le forum DB2
    Réponses: 4
    Dernier message: 08/10/2004, 00h24
  2. update - modification d'une occurance
    Par starius dans le forum Langage SQL
    Réponses: 5
    Dernier message: 22/04/2004, 12h12
  3. Réponses: 1
    Dernier message: 08/03/2004, 11h35
  4. [JDialog] Modification dans une fenêtre
    Par cefabien dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 01/10/2003, 13h18
  5. Erreur lors de modification d'une table
    Par seb.49 dans le forum SQL
    Réponses: 11
    Dernier message: 13/01/2003, 17h16

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