Bonjour,
J'essaie dans mon programme d'ouvrir un fichier. A chaque fois, j'obtiens une sharingViolation alors que mon fichier n'es ouvert nul part.
Voici mon code:
void CMyEditApp::onFichierOuvrir()
{
CString OpenFilter;
OpenFilter = "Text File (*.txt)|*.txt||";
CFileDialog FileOpenDialog(
TRUE,
NULL,
NULL,
OFN_FILEMUSTEXIST|OFN_HIDEREADONLY|OFN_PATHMUSTEXIST,
OpenFilter, // filter
AfxGetMainWnd()); // the parent window
if(FileOpenDialog.DoModal()==IDOK)
{
CFile File;
VERIFY(File.Open(FileOpenDialog.GetPathName(),CFile::modeRead));
CString pszFileName = FileOpenDialog.GetPathName();
const char* pStr = (LPCTSTR) pszFileName;
CFile myFile;
CFileException fileException;
if ( !myFile.Open( pStr, CFile::modeCreate |
CFile::modeReadWrite, &fileException ) )
{
TRACE( "Can't open file %s, error = %u\n",
pszFileName, fileException.m_cause );
if (fileException.m_cause == CFileException::sharingViolation){
TRACE("Quel erreur");
}
}else{
OpenNewDocument("Document Texte", pStr);
}
}
}
J'obient toujours le message d'erreur dans la trace, merci de m'indiquer ce que je dois faire pour ouvrir un fichier sans problème.
Je travaille sous XP Home avec VC++ 6.0