EDSDK cpp错误:10 EDS_ERR_MISSING_SUBCOMPONENT

时间:2013-08-17 12:10:17

标签: c++ windows windows-xp edsdk

我正在尝试使用EDSDK来控制我的佳能500D。我是cpp的新手,Windows XP应用程序和我正在使用visual studio。经过大量盲目的试验和错误后,我终于设法让应用程序从文档中编译基本的示例代码。为此,我在正确的位置有EDSDK.h,EDSDKTypes.h和EDSDKErrors.h标头,EDSDK.dll和EDSDK.lib在与代码相同的文件夹中。它似乎正在挑选这些。我已经让500D被PC识别,所以我相信USB驱动程序就在那里。

代码只是试图拿起相机:


    EdsError err=EDS_ERR_OK;
    EdsCameraListRef cameraList=NULL;
    err = EdsGetCameraList(&cameraList);
    if(err == EDS_ERR_OK)
    {...}

但是,当我运行此控制台应用程序时,错误被选为10 - 这表明,根据文档,有一个缺少的子组件。如果相机连接或未连接都会发生这种情况,所以我认为这是编译中缺少的东西。但我无法获得文档。

我已经从官方路线下载安装了edsdk 2.4 Windows版本,因此这可能是一个问题。

有人可以帮忙吗?具体来说,我如何找出丢失的子组件可能是什么,以便我可以包含它。这是构建的子类,如头文件还是类似驱动程序?

1 个答案:

答案 0 :(得分:0)

我知道,这个老问题,但它仍然可以帮助有同样问题的人。

来自文档:

  

执行EDSDK客户端应用程序需要所有DLL。   必须将DLL文件夹中的所有模块复制到EDSDK客户端应用程序所在的同一文件夹中。

这意味着您必须在* .exe旁边拥有所有DLL。即这些DLL:

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