ICollectionPtr COM

问题描述 投票:0回答:1

我有一个问题已经困扰了一天左右,我想知道是否有人可以提供帮助:

我正在尝试使用 ActiveMQ-NMS 在 C++ 应用程序中通过 COM 将消息出队。我已成功构建源代码并覆盖“ComVisible”标志,以便通过 RegAsm 导出程序集中的所有类型(我确实收到了有关此类和“Atomic”类的警告,但我不认为这是我面临的问题目前)。

作为 RegAsm 的一部分,我生成了一个 .tlb 文件,我在 C++ 客户端的 #import 中使用该文件。然而,我在编译时收到了各种错误。诸如此类:

error C2146: syntax error : missing ';' before identifier 'Keys'
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
error C4430: missing type specifier - int assumed. Note: C++ does not support default-int 

本质上,像 ICollectionPtr(以及其他各种)之类的东西看起来不可用。谁能帮助我解决这些问题?本质上我希望将 .net ActiveMQ-NMS 程序集注册为 COM 兼容组件,然后从 C++ 使用它...

com nms
1个回答
1
投票

除非有其他原因需要使用 COM 和 NMS,否则为什么不直接使用 ActiveMQ-CPP 客户端呢?那么你就可以避免 COM 的所有复杂性。 ActiveMQ-CPP 位于此处

© www.soinside.com 2019 - 2024. All rights reserved.