0

私は今、私が1日かそこらで喧嘩している問題を抱えており、誰かが助けてくれるのではないかと思っています。

ActiveMQ-NMSを使用して、C++アプリケーションでCOMを介してメッセージをデキューしようとしています。RegAsmを介してアセンブリ内のすべてのタイプをエクスポートするために、ソースをビルドして「ComVisible」フラグをオーバーライドすることができました(これと「Atomic」クラスに関する警告を受け取りましたが、これが私が直面している問題だとは思いませんこの時点で)。

RegAsmの一部として、C++クライアントの#importで使用する.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++から使用することを検討しています...

4

1 に答える 1

1

COMとNMSを使用する他の理由がない限り、ActiveMQ-CPPクライアントを使用しないのはなぜですか?そうすれば、COMの複雑さをすべて回避できます。ActiveMQ-CPPはここにあります

于 2011-04-27T11:37:35.370 に答える