Visual Studio — Как включить Long Path Aware & quot; поведение через манифест в исполняемом файле C ++?

Я пытаюсь следовать Документация Microsoft поднимать MAX_PATH ограничение пути к файлу в API под Windows 10. Там написано:

Вы также можете включить новое поведение длинного пути для приложения через
проявляются:

<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
<ws2:longPathAware>true</ws2:longPathAware>
</windowsSettings>
</application>

Итак, первый вопрос. Возможно ли включить его в свойствах проекта в Visual Studio 2017?

Второй вопрос: я не смог найти ответ выше, поэтому я решил пойти ручным путем:

  1. Я создал additional.manifest текстовый файл как таковой:

    <?xml version="1.0" encoding="utf-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3" >
    <application xmlns="urn:schemas-microsoft-com:asm.v3">
    <windowsSettings xmlns:ws2="http://schemas.microsoft.com/SMI/2016/WindowsSettings">
    <ws2:longPathAware>true</ws2:longPathAware>
    </windowsSettings>
    </application>
    </assembly>
    
  2. Затем я добавил его в свойства проекта:

введите описание изображения здесь

  1. Но затем, когда я компилирую его, он выдает мне это предупреждение, и этот манифест, похоже, не действует при запуске приложения:

1> Additional.Manifest: манифест предупреждение об авторском 81010002:
Нераспознанный элемент «longPathAware» в пространстве имен
«http://schemas.microsoft.com/SMI/2016/WindowsSettings».

Так что я делаю не так?

3

Решение

Нет. В свойствах проекта Visual Studio 2017 v15.9.4 для настольных или консольных приложений Windows отсутствует параметр, позволяющий включить «Long Path Aware».

Документация Microsoft, на которую вы ссылались выше, гласит следующее:

Начиная с Windows 10 версии 1607 ограничения MAX_PATH были удалены из общих функций файлов и каталогов Win32. Тем не менее, вы должны подписаться на новое поведение.

Убедитесь, что вы используете Windows SDK для Windows 10 версии 1607 или выше для используемой конфигурации и текущего набора инструментов. Вам нужен как минимум Windows SDK v10.0.14393.795. Текущая версия v10.0.17763.0.

Вы можете найти и изменить целевую версию Windows SDK и целевой набор инструментов на странице свойств «Общие» свойств проекта.

Примечание: Сделайте общие изменения конфигурации активными во всех конфигурациях. Измените параметры конфигурации листа свойств на «Все конфигурации» и «Все платформы», за исключением того, что вы вносите изменения специально для платформы.

-1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]