Итак, у меня есть Visual Studio 2013 (версия сообщества) с установленной Qt addn, библиотеками Qt5 (32 бит), и я пытаюсь создать исполняемый файл, который не зависит от всех конфигураций разработки (он может использовать статические или общие библиотеки, я на данный момент это неважно).
ОС: Windows 7, x64.
Для этого я изменил параметр Solution Confguration visual studio от Debug до Release и добавил все необходимые библиотеки в Configuration Properties -> Linker -> Input -> Additional Dependencies. Приложение теперь запускается, только если я запускаю его из визуальной среды IDE. Если я попытаюсь запустить его из сгенерированной .exe, я получил ошибку The application was unable to start correctly (0xc000007b).
Я искал и обнаружил, что этот код ошибки указывает на одну из следующих проблем:
- 32-разрядное приложение пытается загрузить 64-разрядную DLL (не в моем случае, я думаю, Qt DLL 32-битные (я установил с помощью этого .exe:
qt-opensource-windows-x86-msvc2013-5.5.0.), и я использую некоторые другие .DLL, которые также 32bit). - Есть некоторые недостающие DLL. (Я скопировал все необходимые Qt DLL в той же папке с окончательным исполняемым файлом).
Для проверки того, какие зависимости требуется моему приложению, я открыл файл .exe с помощью приложения Dependency Walker, вот что он мне показывает:
в этом списке также были Qt5Multimedia.dll и Qt5SerialPort.dll, я избавился от ошибок, скопировав .DLLs в ту же папку с .exe.
Есть идеи, как это решить?
