DirectShow的在C#中的窗口mobile-策略?

我试图找出如何添加一些DirectShow的功能,以C#应用程序(。NET CF 3.5移动6及以上运行),和我有一个很难搞清楚如何弥合使用非托管C之间的差距++类(ES)的托管C#。

我已经写我需要在C ++的功能:基本上,我有一个使用COM进军所需的DirectShow功能的管理器类快速免责声明:我是新来的COM,我很新的整合与C ++ C#。

。我真的希望有人懂行的可以提出一个基本的战略,我进一步研究下面是一些我进去看了看,我发现他们的问题:

  1. 创建一个C ++ DLL,然后调用到它从C#。
    问题:因为我工作在智能设备平台上,创建一个托管C ++ DLL不是一种选择,所以C#不幸的是将无法直接调用我的C ++ DLL创造了我的非托管C ++“DSHOW一个实例经理人“类从C#(通过COM)的最佳选择?
  2. 创建一个C ++ DLL,然后只的PInvoke / dllimport的需要的方法。
    问题:我的解决方案有一个事件侦听器之类的东西,所以我需要保持管理器类(见选项3)的一个实例,而不仅仅是打电话到各个方法。
  3. 复制C#中的C ++类,然后只需调用通过COM的DSHOW方法从C#问题这似乎是对我最好的选择,但是从我在这里发现的MSDN,我需要先“创建COM接口管理的定义和类型“,不幸的是我无法找到DirectShow的TLB文件通过TLBIMP.EXE进口。 所有WM6 SDK给我的DSHOW库,PDBS和的EXP。 我甚至无法找到IDL文件来创建一些网站建议的,TLB中。

按照现在的情况,我还在寻找到的东西,但现在那种卡死。 有什么建议么? 提前致谢!

--------------解决方案-------------

你也许可以看看桌面DShow.NET库为指导,以移植。 亚历克斯Mogurenko最近的博客上播放音频和视频DSHOW对WinMo的也是一个很好的资源。

编辑:我想我没有直接回答关于战略的问题。 是的,#3是要走的路。 裹DSHOW并调用它,不添加混乱间接的另一个层(COM是混乱已经足够)。

分类:COM 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.238 (s). 10 q(s)