Visual Studio C ++ DLL сторонних производителей препятствуют запуску .exe

Я новичок в C ++ и я делаю приложение в Visual Studio 2010, используя SDK, который имеет сторонние библиотеки DLL. Я хочу иметь возможность запускать эту программу на других компьютерах, поэтому я посмотрел на этот вопрос, чтобы убедиться, что я включил их правильно (в частности, ответ Laserallan). Затем я собираю программу в режиме релиза, и она прекрасно компилируется. Проблема в том, что когда я пытаюсь запустить .exe в папке с примером выпуска, программа не запускается. Не уверен, что эти детали являются подходящими, но мой проект использует MFC в статической библиотеке и многопоточной (MT) библиотеке времени выполнения. Инкрементное связывание не включено.

Я подозреваю, что это как-то связано с тем, что dll находится в том же месте, что и .exe, потому что, если я переместу один из них из папки с примером выпуска, я получу эту ошибку:

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

Я также заметил это в API SDK. Я не уверен, является ли это релевантным или нет:

«EBUS SDK предоставляется в виде DLL. Статические библиотеки на данном этапе не предлагаются. Несмотря на то, что предоставляются DLL, все же необходимо связать ваше приложение с библиотеками ссылок DLL».

Раньше .exe работал нормально, он начал испортиться только тогда, когда я попытался поместить dll в то же место, что и exe, попытался заставить его работать на других компьютерах и когда я переустановил SDK. У кого-нибудь есть идеи о том, что бы это могло быть? Это делало мою голову в течение прошлых 2 дней теперь. Любая помощь будет принята с благодарностью.

0

Решение

Я решил, оказалось, что на новом компьютере было 2 версии PvBuffer, у одной был метод GetAcquiredSize, а у другой — нет. Программа выполняла версию, которой не было, и пыталась найти метод, которого там не было. Спасибо за вашу помощь!

0

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


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector