Проблема с рекурсивным итератором каталогов в Windows 11 — не удается отобразить символические связанные подпапкиC++

Программы на C++. Форум разработчиков
Гость
Проблема с рекурсивным итератором каталогов в Windows 11 — не удается отобразить символические связанные подпапки

Сообщение Гость »


Я столкнулся с проблемой с фрагментом кода рекурсивного итератора каталогов в Windows 11. Код предназначен для перемещения по подпапкам, включая символические ссылки. Однако в Windows 11 не отображаются символические связанные подпапки. Я хотел бы понять, почему это происходит и как это решить.

#include // ... for (std::filesystem::recursive_directory_iterator i("D:\\media\\", std::filesystem::directory_options::follow_directory_symlink), end; i != end; ++i) { if (std::filesystem::is_directory(i->path())) { // Выполняем некоторые действия, связанные с каталогами } } Желаемое поведение: Я хочу, чтобы код успешно проходил через все подпапки, включая символические связанные подпапки, при запуске в Windows 11.

Конкретная проблема: Приведенный выше фрагмент кода отлично работает в Windows 10, показывая, как и ожидалось, символические связанные подпапки. Однако при запуске того же кода в Windows 11 не удается отобразить символические связанные подпапки.

Сообщение об ошибке: Никаких сообщений об ошибках или исключений не выдается. Код просто не включает символические связанные подпапки в итерации Windows 11.

Дополнительная информация:

Используемый компилятор: C++ 17 (Visual Studio 2022) Я был бы очень признателен за любые идеи или решения, которые помогут правильно работать этому коду в Windows 11. Спасибо!

Вернуться в «C++»