EDSDK回调无法正常工作

时间:2013-05-30 15:03:49

标签: c++ callback edsdk

我有一个工作命令行应用程序,使用EDSDK v2.13。

然而,当我注册回调时,会发生一系列属性事件,然后什么都没有。

我已经解决了这样一个循环:

while(!_kbhit())
{
  EdsOpenSession(camera);
  Sleep(10);
  EdsCloseSession(camera);
}

这看起来非常糟糕。 SDK被破坏了,还是我错过了什么?

2 个答案:

答案 0 :(得分:2)

如果您在Windows上使用EDSDK,则必须在主线程中使用Windows消息循环,否则不会发生回调。 (这是因为EDSDK使用过时的COM STA线程模型而不是真正的线程。)

答案 1 :(得分:0)

佳能EDSDK卡在90年代,使用起来非常糟糕。经过几天的玩耍后,它似乎不如尼康复杂。

这些公司应该在像索尼这样的所有相机上实现基于http的API。