EDSDK cpp error: 10 EDS_ERR_MISSING_SUBCOMPONENT

Я пытаюсь начать работу с EDSDK для управления моим Canon 500D. Я новичок в приложениях cpp и windows XP и использую visual studio. После большого количества слепых проб и ошибок мне наконец-то удалось заставить приложение скомпилировать базовый пример кода из документации. Для этого у меня есть заголовки EDSDK.h, EDSDKTypes.h и EDSDKErrors.h в нужных местах, а EDSDK.dll и EDSDK.lib в той же папке, что и код. Похоже, что собираешь их. У меня есть 500D, который распознается ПК, поэтому я считаю, что драйверы USB есть.

Код просто пытается поднять камеру:


EdsError err = EDS_ERR_OK;
EdsCameraListRef cameraList = NULL;
err = EdsGetCameraList (cameraList);
если (err == EDS_ERR_OK)
{...}

Однако, когда я запускаю это консольное приложение, ошибка принимается равной 10, что, согласно документу, указывает на отсутствие подкомпонента. Это происходит как в том случае, если камера подключена или нет, так что я думаю, что этого не хватает в компиляции. Но я ничего не получаю с документацией.

Я установил версию Windows edsdk 2.4 из загрузки, а не по официальному маршруту, так что это может быть проблемой.

Кто-нибудь может помочь? В частности, как я могу узнать, что может быть отсутствующим подкомпонентом, чтобы я мог включить его. Является ли это субкомпонентом сборки как файл заголовка или что-то вроде драйвера?

0

Решение

Я знаю, старый вопрос, но все же он может помочь кому-то с той же проблемой.

Из документации:

Все библиотеки DLL необходимы для выполнения клиентского приложения EDSDK.
Все модули в папке DLL должны быть скопированы в ту же папку, где находится клиентское приложение EDSDK.

Это означает, что у вас должны быть все библиотеки DLL, кроме вашего * .exe. А именно эти DLL:

  • DPPDLL.dll
  • DPPLibCom.dll
  • DPPRSC.dll
  • EDSDK.dll
  • EdsImage.dll
  • Mlib.dll
  • Ucs32P.dll
0

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

Других решений пока нет …

По вопросам рекламы [email protected]