我有一个问题,我已经与之斗争了一天左右,我想知道是否有人可以帮助我:
我正在尝试使用ActiveMQ-NMS在C++应用程序中通过COM将消息出队。我已经设法构建了源代码并覆盖了'ComVisible‘标志,以便通过RegAsm导出程序集中的所有类型(我确实收到了关于这个和’原子‘类的警告,但我不认为这是我目前面临的问题)。
作为导入的一部分,我生成了一个在C++客户机的# RegAsm中使用的.tlb文件。然而,我在编译时收到了各种错误。这样的东西:
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++使用它...
发布于 2011-04-27 19:37:35
除非有其他原因使用COM和NMS,否则为什么不直接使用ActiveMQ-CPP客户端呢?这样您就可以避免COM的所有复杂性。ActiveMQ-CPP位于here
https://stackoverflow.com/questions/5793348
复制相似问题