Un problème avec CFile.Open
Bonsoir,
J'ai un problème un peu bizarre lors de l'utilisation de la méthode Open de la classe CFile. Je vous transmet le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
#include "stdafx.h"
#include "ParserVrml.h"
int CParserVrml::ReadFile(char *filename)
{
m_FileName = filename;
CFile file;
CFileException ex;
// Opening
TRACE(" opening...");
if(!file.Open(filename, CFile::modeRead | CFile::typeBinary, &ex))
{
#ifdef _DEBUG
afxDump << "File could not be opened " << ex.m_lOsError << "\n";
#endif
TRACE("unable to open file for reading\n");
return 0;
}
TRACE("ok\n");
// Size file
m_SizeFile = file.GetLength();
//m_SizeFile = file2->_bufsiz;
TRACE(" length : %d bytes\n", m_SizeFile);
...
} |
Pas d'erreurs de compilation, lorsque j'exécute la chaine "filename" prend la valeur "c:\\standingstart.wrl". J'ai bien verifié qu'il existe un fichier avec ce nom. Un fichier texte précisément, et qu'aucun autre programme n'utilise ce fichier lors de l'exécution.
Pourtant l'exception levée par "ex" est 32 qui indique qu'un autre processus a ouvert le fichier.
Le code dans un autre projet fonctionne parfaitement.
Avez vous des suggestions sur les causes possibles de cette erreur?
Merci.