2013-05-17 4 views
1

Я проверил в своей версии dll файл x264, что открытая функция называется «x264_encoder_open_130», а 130 - конкретный номер сборки x264, который я использую. Я строю с помощью minGW на окнах и ссылаюсь на него, поэтому моя программа потерпит крах, если я попытаюсь использовать новую dll .. есть ли способ обойти это?libx264.dll предоставляет функцию x264_encoder_open_130, shouldnt это x264_encoder_open?

ответ

1

Нет, это не должно быть x264_encoder_open. Для обеспечения того, чтобы бинарный файл более высокого уровня был создан против соответствующей версии DLL зависимости, это является мерой, иначе они не соединяются друг с другом из-за несоответствия имени экспорта.

Работать с этим легко - если вы обновите x264, перестройте приложение и обновите библиотеку.

Или, если вы хотите, чтобы ваше приложение можно было обновить без перекомпоновки, оберните x264 в тонкую оболочку, вы обновите его вместе с самим x264, чтобы ссылка приложения верхнего уровня на оболочку не изменила внешний интерфейс с обновлением.

 Смежные вопросы

  • Нет связанных вопросов^_^