Se connecter avec
S'enregistrer | Connectez-vous

You are not allowed to do this.

[MFC] Ouverture fichier

Dernière réponse : dans Programmation

Bonjour,

J'aurais aimé savoir si qq1 savais comment forcer la reouverture d'un fichier je m'explique: j'ouvre un fichier je fais une modification dessus et quand je le reouvre ben ca m'affiche n'importe quoi (alors que quand je ferme l'appli et que je l'ouvre tout est ok). Apparemment y a un probleme avec la reactualisation de l'ouverture quand c'est le meme fichier :D  . Je fais une appli SDI de type cformview et j'utilise les fonctions ouvrir et enregistrer deja fourni de base. Merci de vos reponses ;) 

Autres pages sur : mfc ouverture fichier

Lassé par la pub ? Créez un compte
Expert Programmation

Après avoir lu ou écrit dans un fichier, il faut le fermer pour être sûr que les données soient écrites et que le fichier ne soit pas corrompu.
Une fois ton fichier fermé, tu peux l'ouvrir à nouveau.

Salut :)  , le probleme c'est que c'est pas moi qui le gere c'est windows :D  donc c'est un *.cpp deja codé .... (j'utilise la fonction ouvrir qui est deja implemnté lors de la creation d'un nouveau projet, mes donnéees sont simplement serialisées grace a ca vers un fichier). De mon coté je ne m'occupe que de la serialisation.

kestu veux qu'on te dise.

Si tu vas pas montrer ton morceaux de code, on peut pas faire grand chose pour toi ....
Comme déjà dis ici: J'ai oublié ma boule de cristal!!

Par expérience, après avoir écrit des 100aines de milliers de lignes de code: En programmation, il n'y a pas vraiment d'impossibilité (à ce niveau là bien sur), on peut toujours contourner le problème, changer de méthode... en réutilisant l'existant, ou en inventant sa propre méthode.

Ce n'est pas que je veux pas montrer mon code :D  c'est que je n'ai que cette ligne tout simplement :
  1. ON_COMMAND(ID_FILE_OPEN, CWinApp::OnFileOpen)

Donc je vois pas a quoi ca avancerait ...(la fonction utiliser doit etre dans un fichiers generique de visual 6 ;)  )

De plus j'ai essayé comme dans l'exemple de code du lien au dessus de recreer une fonction c'est pas mieux ....alors je vois pas du tout :pt1cable: 

PS: je pecise bien une appli mfc que je fais .... :)  donc si il y a des fonctions d'origine deja dispo c'est bien pour s'en servir :(  apres si elles marchent a moitié :whistle: 

Non en fait je crois que ca vient de la le probleme j'ai regardé j'ai ps de OpenDocument() juste un NewDocument(). Pour la serialisation :
  1. ar >> Objet.NbEleve;
  2. for(int i=0;i<Objet.NbEleve;i++)
  3. {
  4. Objet.TEleve[i].Serialize(ar);
  5. ar>>Objet.TEleve[i].Nom>>Objet.TEleve[i].Classe ...
  6. ...>>Objet.TEleve[i].moyenne>>Objet.TEleve[i].com;
  7. // Chargement des informations }


En fait quand j'ouvre le meme document il laisse la meme chose (donc laisse les modifications apportés). Or j'aimerais que ca revienent au doc initial.
Merci (je suis vraiment ps doué en mfc et c++ :pt1cable:  )

EDIT : apparamment on m'a confirmer que c'etait bien a cause de la fonction d'ouverture qui ne pointe pas sur un fichier deja ouvert ... c'est donc la fonction ouvrir faite de base qui plante .. :) 
Lassé par la pub ? Créez un compte
Tom's guide dans le monde