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 :

[VC++ 6.0] : CMemFile


Sujet :

MFC

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 60
    Par défaut [VC++ 6.0] : CMemFile
    Bonjour,

    Je dois sauvegarder des donner dans un CMemFile : Mon code:

    Dans le .h : je déclare :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    private:
     	CMemFile       m_MemFile;
    Pour sauvegarder le contenu du fichier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    void CConfigurationProjetDlg::OnOk()
    {
    CArchive ar( &m_MemFile, CArchive::store );
    m_pPS->Serialize( ar ); //m_pPS : les données que je dois sauv...
    ar.Flush();
    ar.Close();
    m_MemFile.Seek(0,CFile::begin);
    DWORD dwDataSize = (DWORD)m_MemFile.GetLength();
    LPBYTE pData = new BYTE [ dwDataSize ];
    m_MemFile.Read( pData, dwDataSize ); // put pData to some data storage
    delete [] pData;
    OnOk()
    }
    Pour lire le fichier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    BOOL CConfigurationProjetDlg::OnInitDialog()
    {
     ......
     ......
     if (m_MemFile.GetLength() > 0)
      {
         m_MemFile.Seek(0,CFile::begin);
         CArchive ar( &m_MemFile, CArchive::load );
         m_pPS->Serialize( ar );
      }
    }
    Lorsque je passe dans la fonction OnOk() : la varibale m_MemFile contient des valeurs. mais lorsque la boite de dialogue est fermé et ensuite je la réouvre de nouveau dans la fonction OnInitialDialogu() m_MemFile ne contient aucune valeur....

    Est ce que je manque quelques choses dans mon code ???

    Merci

    Mirna

  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,
    ça me semble normal si m_MemFile est une donnée membre de la classe Dialogue...
    quand la boîte se ferme cette variable est nettoyée ...
    si tu dois lancer plusieurs fois la dialogue cette variable doit etre externe à la dialogue

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 464
    Par défaut
    Ce que tu décris ne peut fonctionner que si ton objet CConfigurationProjetDlg est persistant.

    Est-ce bien le cas ?

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 60
    Par défaut
    Merci pour vos réponses

    Non CConfigurationProjetDlg n'est pas persistant..

    Comment puis-je resoudre ce problème dans ce cas??????

    Merci pour vore aide

    M.

  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
    j'ai répondu ...

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2006
    Messages
    60
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 60
    Par défaut
    Merci farscape...

    Je suis dans la lune, notre structure des classes est tellement compliquéeee

    Je resoud mon probleme

    Merci encore

    Mirna

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

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