我该如何编写COM dll?

时间:2011-09-22 19:35:57

标签: c++ com midl visual-c++-2008-express

为了更好地自己,我试图让我的dll符合COM,我想我只需要扩展/实现一些接口并完成工作,但现在我正处于十字路口,

1)我应该学习MIDL吗?

2)我应该安装ATL(我正在运行VC ++ Express)吗?

3)继续阅读C ++教程(http://progtutorials.tripod.com/COM.htm)并希望我的Express版本太有限了?

2 个答案:

答案 0 :(得分:2)

  

我有兴趣将原生C ++转换为Android和Java,并且读取库需要公开静态“C”样式函数或实现COM。

Android是基于Linux的操作系统...它不支持DLL和COM。

所以不,你不能通过COM。您需要学习如何使用JNI。

答案 1 :(得分:2)

1)是的。如果你要定义新的接口,你几乎必须这样做。没有MIDL并非不可能,但这比学习基本的MIDL更难。

2)是的,请做。它将隐藏大部分锅炉板代码(编写起来很繁琐,而且容易出错)。

3)我会推荐Don Box的书Essential COM。这很棒。此外,这本书的一个很好的伴侣是Martin Gudgin的Essential IDL

至于VC ++ Express - 我从未使用它们。我想可以用它做COM,但工具/库支持有限。