bonjour à tous,
J'ai développé une méthode qui liste le contenu d'un dossier et l'affiche dans un ListBox.
J'ai eu de bon résultat lorsque le dossier existe sous c:\
Mais le problème est lorsque le dossier est sous D:\ la fonction FindFirstFile retourne INVALID_HANDLE_VALUE

Le code est comme suit:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
bool CMToolsDlg::FindRelatedFiles(string i_strPath)
{
  WIN32_FIND_DATA FindFileData; 
  HANDLE hFind = INVALID_HANDLE_VALUE; 
  TCHAR* DirSpec; // directory specification 

  i_strPath.append("\\*.*");
  DirSpec = ConvertStringTchar(i_strPath);
  hFind = FindFirstFile((LPCWSTR)DirSpec, &FindFileData);

  if(hFind == INVALID_HANDLE_VALUE)
  {
    return false;
  }

  while(FindNextFile(hFind, &FindFileData) != 0)
  {
    m_FilesList.AddString(FindFileData.cFileName); \\m_FilesListest un listbox
  }

  FindClose(hFind);

  return true;
}
Merci pour votre aide