BadImageFormatException при попытке добавить файл .dll в проект C # - Intel realsense SDK

Каждый раз, когда я пытаюсь скомпилировать, я получаю эту ошибку:

System.BadImageFormatException: 'Была сделана попытка загрузить программу с неправильным форматом. (Исключение из HRESULT: 0x8007000B) '

когда я пытаюсь запустить session = PXCMSession.CreateInstance();

Я использую 32-разрядную операционную систему Windows 10 pro.

Добавлена ​​ссылка на файл:

c: \ Program Files \ Intel \ RSSDK \ bin \ win32 \ libpxcclr.cs.dll

добавлено к вечеру сборки:

if "$(Platform)" == "x86" ( copy /y "$(RSSDK_DIR)\bin\win32\libpxccpp2c.dll" "$(TargetDir)" ) else ( copy /y "$(RSSDK_DIR)\bin\x64\libpxccpp2c.dll" "$(TargetDir)" )

И на вкладке сборки изменилась цель платформы с любого процессора на X86


person mowinka    schedule 12.06.2017    source источник
comment
Думаю, эта ветка может вам помочь: community.intel.com/thread/110198 Если это не так Не помогло, вы также можете задать свой вопрос там.   -  person Ruard van Elburg    schedule 12.06.2017
comment
Уже видел, толком не помогло   -  person mowinka    schedule 12.06.2017


Ответы (2)


По моему опыту, это исключение обычно возникает из-за конфликта x64 / x86. Вы определенно имеете в виду x86-версию libpxcclr.cs.dll?

person jb455    schedule 12.06.2017

Чтобы исправить это, вернитесь к cmake и выполните сборку с компиляторами x64 в вашей системе. Если вы не видите запрос версии компилятора, удалите каталог «build» и попробуйте cmake-gui еще раз. Все примеры C # работают в x64, но не в 32-битном.

person Bob Davies    schedule 25.09.2018
comment
У OP есть несчастье использовать 32-битную ОС, поэтому они не смогут использовать 64-битные исполняемые файлы после их сборки. - person Peter Cordes; 25.09.2018