Я разрабатываю приложение в Visual Studio 2022, используя докер-контейнер. Я использую CMakePreset для настройки системы и могу успешно открыть контейнер, выполнить и отладить приложение.
У меня проблема в том, что Intellisense не распознает библиотеки Qt: во всех предложениях включения написано «невозможно открыть исходный файл», а идентификатор не распознается (идентификатор не определен). Смотрите фотографии ниже.
Проблема в том, что проект на самом деле «знает», где они находятся, потому что приложение может быть выполнено и не вызывает никаких проблем.
В то же время, если я открою контейнер в VS Code с тем же файлом dockerfile и CMakePresets, у меня не возникнет никаких проблем, и Intellisense распознает все классы Qt. См. картинку ниже.
Что ты посоветуешь?
Я видел в Интернете, что решение потребует обновления свойства «Каталоги VC++» проекта, но я не могу его найти, может быть, потому, что я работаю над контейнером?!
Я обнаружил, что некоторые другие пользователи также сообщили о той же проблеме на Github.
Как сказали Адам Йоблик и Бшнурр:
Пожалуйста, обратитесь к связанной проблеме для получения любых обновлений. Это в нашем портфеле исправлений, но, к сожалению, у нас есть другие задачи с более высоким приоритетом.
vs 2022 Preview 4 будет исправлено после выхода
Я думаю, что можно сделать на данный момент, так это дождаться решения проблемы. В качестве обходного пути: попробуйте закрыть решение в VS и снова открыть его, чтобы проверить, сохраняется ли проблема.
Также вы можете сообщить об этой проблеме на форуме VS:
https://developercommunity.visualstudio.com/VisualStudio/report
Это позволит вам напрямую взаимодействовать с соответствующей группой продуктов и сделает для группы продуктов более удобным сбор и классификацию ваших проблем.
Документы указаны:
https://github.com/microsoft/PTVS/issues/6713
https://github.com/microsoft/PTVS/issues/6874
Надеюсь, это поможет вам.
Спасибо за помощь. Надеюсь исправят, подождем :(