Win32 эквивалент опендира - PullRequest
0 голосов
/ 10 января 2009

Кто-нибудь знает, что такое Win32-эквивалент opendir (или вообще существует)? Очевидно, что я мог бы использовать FindFirstFile (Ex) с FindNextFile, но добавление * к пути кажется таким хакерским способом сделать это.

Ответы [ 2 ]

3 голосов
/ 10 января 2009

FindFirstFile и FindNextFile - соответствующие API Win32. Предполагая, что вы пишете код на C ++, в качестве переносной альтернативы вы можете рассмотреть возможность использования directory_iterator из библиотеки Boost Filesystem (которая реализована в Windows с использованием FindFirstFile и FindNextFile).

0 голосов
/ 10 января 2009

Полагаю, вы можете использовать CreateFile с FILE_FLAG_BACKUP_SEMANTICS, а затем BackupRead для чтения данных каталога, но я не уверен, в каком формате на самом деле эти данные Кроме того, вам необходимо работать как пользователь с включенной привилегией SE_BACKUP_NAME, так что это не очень подходит для приложений общего назначения.

...