Enumerando pastas montadas

As funções a seguir são usadas para enumerar as pastas montadas em um volume NTFS especificado:

Essas funções funcionam de maneira muito semelhante às funções FindFirstFile, FindNextFilee FindClose .

Para enumerar pastas montadas em um volume, primeiro descubra se o volume dá suporte a pastas montadas. Para fazer isso, use o nome do volume retornado pelas funções FindFirstVolume e FindNextVolume para chamar a função GetVolumeInformation . Os nomes retornados incluem uma barra invertida à direita ( \ ) para ser compatível com a função GetDriveType e funções relacionadas. Para obter mais informações sobre as funções usadas para verificar os volumes em um computador, consulte enumerando volumes. Quando você chamar a função GetVolumeInformation , se "NTFS" for retornado no parâmetro lpFileSystemNameBuffer , o volume será um volume NTFS. O sistema de arquivos NTFS dá suporte a pastas montadas.

Se o volume for um volume NTFS, inicie uma pesquisa para as pastas montadas chamando FindFirstVolumeMountPoint. Se a pesquisa for bem-sucedida, processe os resultados de acordo com os requisitos do seu aplicativo. Em seguida, use FindNextVolumeMountPoint em um loop para localizar e processar as pastas montadas uma de cada vez. Quando não houver mais nenhuma pasta montada a ser enumerada, feche o identificador de pesquisa chamando FindVolumeMountPointClose. Observe que a pesquisa localizará apenas as pastas montadas que estão no volume especificado.

Você não deve assumir nenhuma correlação entre a ordem das pastas montadas que são retornadas por essas funções e a ordem das pastas montadas que são retornadas por outras funções ou ferramentas.