Поделиться через


Определение того, является ли каталог подключенной папкой

Полезно определить, является ли каталог подключенной папкой, если, например, вы используете приложение резервного копирования или поиска, ограниченное одним томом. Такое приложение может получить сведения о нескольких томах, если вы используете такие функции, как SetVolumeMountPoint , для создания подключенных папок для других томов на томе, которым приложение ограничено. Дополнительные сведения см. в разделе Создание подключенных папок.

Чтобы определить, является ли указанный каталог подключенной папкой, сначала вызовите функцию GetFileAttributes и проверьте флаг FILE_ATTRIBUTE_REPARSE_POINT в возвращаемом значении, чтобы узнать, имеет ли каталог связанную точку повторного просмотра. Если это так, используйте функции FindFirstFile и FindNextFile , чтобы получить тег reparse в элементе dwReserved0 структуры WIN32_FIND_DATA . Чтобы определить, является ли точка повторного анализа подключенной папкой (а не какой-то другой формой точки повторного анализа), проверьте, равно ли значение тега значению IO_REPARSE_TAG_MOUNT_POINT. Дополнительные сведения см. в разделе Точки повторного анализа.

Чтобы получить целевой том подключенной папки, используйте функцию GetVolumeNameForVolumeMountPoint .

Аналогичным образом можно определить, является ли точка повторного анализа символьной ссылкой, проверив , является ли значение тега IO_REPARSE_TAG_SYMLINK.

Константы атрибутов файлов