Closed. This question is off-topic。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
5年前关闭。
我正在考虑在具有受限C ++编译器的嵌入式(非Windows)系统中使用COM接口,并且我正在寻找使用简单C ++的开源COM实现,尤其是很少使用模板或不使用模板且不使用模板的情况下。异常(是的,我知道COM不使用异常,但是实现可以在内部使用它们)。
在这一点上,我主要是在寻找所有核心COM类型的C ++定义,即IUnknown,IDispatch,VARIANT等,以及一些用于智能指针,BSTR等的帮助程序类。实现QueryInterface和IDispatch的某种程度的支持可能不错,但我我自己也可以做到我想找到一个ITypeInfo实现,而DCOM的嵌入式实现将很有吸引力。
我知道我可以使用Visual Studio随附的Microsoft源代码,但我宁愿避免使用它,因为提取许多不需要的定义很复杂,而且我想避免在非-Windows平台。我也对ATL非常熟悉,由于编译器的限制,我不能使用如此繁重的模板化方法。我在COM和DCOM方面具有丰富的经验,因此我可以自己编写所有定义和帮助程序类,如果需要,甚至可以编写自己的DCOM系统。但是,如果有的话,我宁愿使用现有的开源实现。你有什么建议?
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
5年前关闭。
我正在考虑在具有受限C ++编译器的嵌入式(非Windows)系统中使用COM接口,并且我正在寻找使用简单C ++的开源COM实现,尤其是很少使用模板或不使用模板且不使用模板的情况下。异常(是的,我知道COM不使用异常,但是实现可以在内部使用它们)。
在这一点上,我主要是在寻找所有核心COM类型的C ++定义,即IUnknown,IDispatch,VARIANT等,以及一些用于智能指针,BSTR等的帮助程序类。实现QueryInterface和IDispatch的某种程度的支持可能不错,但我我自己也可以做到我想找到一个ITypeInfo实现,而DCOM的嵌入式实现将很有吸引力。
我知道我可以使用Visual Studio随附的Microsoft源代码,但我宁愿避免使用它,因为提取许多不需要的定义很复杂,而且我想避免在非-Windows平台。我也对ATL非常熟悉,由于编译器的限制,我不能使用如此繁重的模板化方法。我在COM和DCOM方面具有丰富的经验,因此我可以自己编写所有定义和帮助程序类,如果需要,甚至可以编写自己的DCOM系统。但是,如果有的话,我宁愿使用现有的开源实现。你有什么建议?
最佳答案
几年前,我正在考虑启动COM / DCOM的FOSS实现,但没有成功,主要是因为我认为开源社区中的任何人都不会觉得这很有趣。有Software AG的专有实现(称为EntireX DCOM),我认为这对您来说不会很有趣。
对于开源项目,除了Samba和Wine实施以及Mozilla中的XPCOM,还有OpenCOM。他们已将其代码发布在SourceForge上。
10-08 04:55