2013-02-26 3 views
1

Я пытаюсь настроить библиотеку EMGU для моего проекта C#. Я следую этой ссылке http://file.emgu.com/wiki/index.php/Setting_up_EMGU_C_Sharp.Исключение при создании библиотеки EMGU в C#

Я застрял в: x64 Архитектура и EMGU.CV.Invoke Exception Шаг. Я использую Visual C# 2010 Express Edition, и в целевой платформе не отображается опция x64. Я попытался проверить конфигурацию Show Advanced build, а затем запустить мой проект, но он бросает ошибку инициализации типа с внутренним исключением: «Не удается загрузить DLL« opencv_core242 »: указанный модуль не найден. (Исключение из HRESULT: 0x8007007E) ". Но в соответствии с приведенной выше ссылке он должен бросить ошибку с «InnerException» «была сделана попытка загрузить программу, имеющую неверный формат ....».

Исключение брошено в следующую строку.

cap = new Capture(0); 

Пожалуйста, помогите мне.

ответ

0

это больше похоже, что DLL OpenCV не могут быть найдены. Они смотрели вверх во время выполнения. вы можете проверить, что opencv_core242.dll файл присутствует в папке BIN \ Debug? Если я помню, он должен быть бок о бок с файлами Emgu dll.

Вы должны включить DLL OpenCV и убедиться, что они скопированы в выходной каталог. Если вы используете x64-версию EmguCV, вам потребуется также x64-версия opencv.

У меня есть testing project on github, который использует 32-разрядные библиотеки DLL DLL. Я помню, что я вынужден создать другую версию с x64-версией DLL, чтобы иметь возможность развертывать Azure (которая работает только с x64).

+0

Я включил opencv_core242.dll в папку bin/Debug, а также в моем проекте, как указано в ссылке выше.То, что я не могу сделать, - настроить мой проект на платформу x64. –

0

Я думаю, что проблема, которую вы описываете, больше не связана с Emgu.Cv.

Попробуйте следующую ссылку, это может решить вашу проблему:

MSDN Forum

Или в качестве альтернативы:

  1. Переустановка Visual C# 2010 Express
  2. Обновление до Visual C# 2012 Экспресс
0

Да - вы определенно необходимо включить opencv_core242.dll в папку bin/Debug (если это то, где ваш выходной путь!) и в вашем проекте.

Следует учитывать, что файл opencv_core242.dll зависит от других DLL. Удостоверьтесь, что у вас есть все они также включены, и это должно решить вашу проблему. Если вы не можете найти, какие DLL зависят от opencv_core242.dll, попробуйте загрузить Dependency Walker. Это поможет вам найти ваши зависимости в построении иерархической древовидной диаграммы всех зависимых модулей.

Удачи !!!

1

Это работает для меня:

Просто создайте папку с именем «x64» в отладочной \ и скопировать opencv_xxx.dll внутри этой папки «x64».

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