来自佳能 EDSDK EdsInitializeSDK() API 的 EXC_BAD_ACCESS

Posted

技术标签:

【中文标题】来自佳能 EDSDK EdsInitializeSDK() API 的 EXC_BAD_ACCESS【英文标题】:EXC_BAD_ACCESS from Canon's EDSDK EdsInitializeSDK() API 【发布时间】:2016-02-24 19:26:58 【问题描述】:

我正在 OS X 10.11.2 上的 Xcode 7.2 中编写相机控制程序,并且每隔一段时间我的程序会在 EdsInitializeSDK() 处崩溃。大多数在线解决方案都建议下载其他 EDSDK.framework 文件,但这对我不起作用。此外,大多数解决方案几乎是在 3 年前编写的。

对我来说没有意义的是程序大部分时间都在运行,只是偶尔会崩溃。有没有人找到解决方法来防止错误访问?

【问题讨论】:

【参考方案1】:

这似乎与 OSX 10.11+ El Capitan 和“较旧”的 EDSDK 之间的不兼容有关,因为我们在将它与 swift 结合使用时。在 OSX 10.10 Yosemite 中似乎不是问题。 Canon EOS Utility 和其他纯 Objective-c / C++ 大多不受此影响。我可以确认 2016 年 4 月 8 日发布的 EDSDK 3.4 包含这方面的修复。

【讨论】:

如何获得 EDSDK 3.4?截至 2016 年 6 月 18 日,开发者门户上的最新版本是 EDSDK 3.2 EDSDK 3.4 在欧洲门户网站上可用

以上是关于来自佳能 EDSDK EdsInitializeSDK() API 的 EXC_BAD_ACCESS的主要内容,如果未能解决你的问题,请参考以下文章

佳能 EDSDK Liveview 的示例 C 代码?

佳能 EDSDK 在我的电脑中保存图像

OSX EdsOpenSession exc_bad_access 上的佳能 EDSDK 2.11

佳能 LiveView:图像转换为 OpenCV Mat

使用edsdk 2.8拍照并直接将图像保存到PC

使用 Canon EDSDK 2.5.2 VB.NET 进行实时查看