При запуске приложения я получаю диалоговое окно ниже. Я понимаю, это указывает на проблему загрузки библиотеки времени выполнения. Проблема в том, что я не вижу возможности получить более подробную информацию. Какая библиотека? Какова была конкретная проблема при загрузке? и т.д .. Средство просмотра системных событий не имеет записей для этого. Есть ли какие-либо трюки, чтобы выяснить, какую именно библиотеку она пыталась загрузить, когда она попала в ошибку и какова была конкретная проблема?Ошибка Visual Studio на Visual C++ при запуске - любые отладочные трюки?
Microsoft Visual C++ Runtime Library
Runtime Error!
Program: exe path
R6034
An application has made an attempt to load the C runtime library incorrectly.
Please contact the application's support team for more information.*
Мой текущий подход для решения во время выполнения Lib зависимостей для сканирования каталога установки, извлечения из встроенных манифестов для .dll и .exe файлов, а затем генерировать .config и .2.config файлы перенаправить на второстепенные версии среды выполнения, с которой я отправляю. Раньше это всегда получало работу. Не так в этом случае.
Это может быть несколько затруднено тем фактом, что вызывающий код является родным C++, но некоторые из DLL используют .NET. Я называю C++ API, но под капотом он заканчивает использование некоторых DLL, которые сами используют .NET.
Именно это и помогло мне разобраться в проблеме. Оказывается, в каталоге установки была запущенная библиотека времени исполнения vc80 в дополнение к наличию подкаталогов для исполняемых библиотек (CRT, MFC, ...). Избавиться от этого исправлено. Это была неправильная попытка загрузить тот, который был в верхней директории, которая была неправильной версией. Я нашел это с помощью Process Monitor, увидев последнюю DLL, которую он пытался загрузить, до того, как появилось диалоговое окно. – Nerdtron
Рад, что это сработало. Я использую этот инструмент почти ежедневно. –