从Windows C#Canon SDK与PTP或MTP对齐图片
我希望得到一些关于实现看似简单目标的一般指导.我有一个数码单反相机(佳能EOS 50D),需要编写一个应用程序,告诉相机拍照.我还需要将图片传输到计算机,并可能将其从相机的存储中删除.奖励是在我的应用程序中从相机获得实时预览.我的环境将是
Windows(XP Pro或Vista Enterprise)和.Net 3.5(C#).
我做了一些研究,发现了一些选择.我知道一个会工作,但限制我将来只使用佳能相机.我发现并从佳能下载了一个SDK,它提供了很多这方面的功能.我查看了SDK,虽然它很广泛并且用C语言编写,但它确实有C#包装器,可以加快开发速度. 我发现的另一个选项叫做Windows便携设备.显然,它是一个API,可以与实现PTP和MTP标准的设备进行通信.它是基于COM的,据我所知,它没有.Net包装器.然而,这不是一个节目限制.我可以P / Invoke我需要的功能或写一个托管C DLL在我的应用程序中使用与相机交谈. 我正在寻找有WPD经验的人给我指点.我仔细阅读了文档,并看到了传输图像和删除图像的参考.但是,我没有看到提及拍照,获取预览图像或说焦点/自动对焦的命令.
WPD api提供命令WPD_COMMAND_STILL_IMAGE_CAPTURE_INITIATE
我不确定你的相机是否支持它,但它应该很容易找到.如果您可以从驱动程序开发工具包中获取“wpdinfo”工具并在连接相机的情况下启动它,则向其发送WPD_COMMAND_CAPABILITIES_GET_SUPPORTED_COMMANDS命令并查看它是否支持静态图像捕获命令.如果那么你可以尝试一下. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- windows-server-2008-r2 – localhost上的Enter-PSSession失
- 如何将Windows 7中的“身份验证缓存”清除为受密码保护的sa
- 权限 – 是否可以使用组策略授予管理Windows服务的权限?
- Windows – (为什么)是FSCTL_SET_OBJECT_ID危险?
- Windows – Hyper-V主机是否可以在同一主机上加入虚拟机域控
- 带有Windows身份验证的Oracle连接字符串
- windows-server-2008 – Windows Server 2008群集错误
- 使用NTFS“遍历”权限,但用户仍拒绝访问网络共享(SBS 2003)
- windows – 如何从命令行自动隐藏任务栏
- windows-server-2012-r2 – 存储空间2012 R2 – 您可以“撒