Отладка Qt в Visual Studio, отсутствует msvcp140d_app.dll

Я новичок в Qt, но уже несколько лет работаю с Visual studio для разработки C/C++. Теперь я пытаюсь построить GUI для своего проекта. Я установил Qt 5.11.0 и Qt VS Tools на рабочий и домашний ПК. На работе я могу создавать и запускать свой проект с помощью отладчика VS, однако в своей домашней системе я могу создавать, но не могу работать ни с отладчиком VS, ни просто запуская приложение. Я попробовал в релизе, и он работает нормально.

Я получаю error:

Выполнение кода не может быть продолжено, так как VCRUNTIME140D_APP.dll не найден.

Я получаю 4 из них, первые два хотят VCRUNTIME, вторые два хотят MSVCP140D_APP.dll.

Решения, которые я пробовал до сих пор:

  1. Удалил Win SDK и переустановил
  2. Удалил VS2017 и SDK и переустановил
  3. Искал каталоги установки System32, SysWOW64 и VS - нашел msvcp140d.dll и vcruntime140d.dll, но не _app.dlls

Кто-нибудь знает, что они входят в комплект и где их взять? Я не могу понять, почему они у меня на рабочем компьютере, а дома нет. У меня одинаковые обновления VS, одна и та же версия Qt и SDK в обеих системах.

С использованием :

  • Visual Studio 2017 v15.7.1
  • Qt 5.11.0 — msvc2017_64

Я полагаю, что могу просто скопировать .dll's со своего рабочего компьютера и поместить их в соответствующие места на другом, но я хотел бы знать, с чем они должны были быть установлены, чтобы иметь одинаковые настройки в обеих системах.

Изменить: я также попытался изменить набор инструментов платформы на VS2015 с версиями Qt msvc2015_64 и winrt_x64_msvc2015.

Я нашел это сообщение о тех же отсутствующих _app.dll файлах. Там не было никакого ответа, поэтому я попытался переустановить SDK в надежде, что недостающие файлы будут включены туда.

Редактировать 2: я только что просканировал всю свою систему на работе, и оказалось, что у меня там тоже нет недостающего .dll. Это говорит мне о том, что между ними есть разница в свойствах или конфигурации проекта. Я использую git для управления версиями, и в настоящее время я единственный участник этого проекта. Когда я пытаюсь собрать и запустить только пример из руководства по началу работы, у меня дома та же проблема с отсутствующими файлами _app.dll, однако на работе он работает нормально. Теперь я полностью запутался, и любые подсказки очень ценятся.


person mjc449    schedule 15.05.2018    source источник


Ответы (1)


Решение:

После нескольких часов попыток создания новых решений и т. Д. Я решил удалить всю папку сборки и поместить в нее свежие копии всех зависимостей. Мой проект теперь отлично работает в режиме отладки.

Я совершенно уверен, что когда я первоначально скопировал в него файлы Qt .dll, я, должно быть, захватил их из одной из папок winrt, а не из папки msvc2017_64. Для проверки я заменил рабочие файлы .dll файлами из папки winrt_x64_msvc2017 и, конечно же, снова те же ошибки. Итак, это была глупая ошибка с моей стороны, но, надеюсь, это убережет кого-то еще от выдергивания волос в будущем.

person mjc449    schedule 16.05.2018
comment
Отличный вопрос с отличным ответом!! - person Zhang; 06.12.2019