Как изменить текущий каталог на длинный путь - PullRequest
0 голосов
/ 30 мая 2019

Несмотря на то, что задокументировано для обработки префикса \\?\, SetCurrentDirectory(), очевидно, не может этого сделать ( см. Здесь ).Передача пути длиной более 260 символов всегда возвращает ERROR_FILENAME_EXCED_RANGE, хотя я включил префикс \\?\.Протестировано на Windows 7.

Это заставляет меня задуматься, как я могу изменить текущий каталог на путь, который длиннее 260 символов.Нужно ли разбивать этот длинный путь на кусочки макс.260 символов каждый и на каждом из этих кусков вызывается SetCurrentDirectory(), или каков рекомендуемый способ решения этой проблемы?

Примечание: я знаю, что в Windows 10 проблему можно решить, установив добавление longPathAware заполнить манифест и установить соответствующий флаг реестра.Тем не менее, я специально ищу решение, которое работает и в Windows 7 и 8.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...