問題タブ [idispatch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
184 参照

c++ - C++ でプロパティを使用して COM インターフェイスを宣言する方法

Eclipse C++ 環境 (MinGW GCC ツールチェーン) で登録済みの COM インターフェイス (Inproc dll) を呼び出そうとしています。したがって、Visual C++ で通常行っている方法で dll タイプ ライブラリを単純にインポートできるとは思えません。Invoke を使用するのではなく、関数呼び出しを簡素化するために、自分でインターフェイスを定義しようとしています。

oleview からのインターフェイスの IDL は次のようになります。

次のように、独自のヘッダー ファイルでインターフェイスを定義しようとしました。

これは、メソッド呼び出しではうまく機能しているように見えますが、プロパティでは機能していないようです。プロパティ関数を呼び出そうとすると、アクセス違反が発生します。ただし、次のようなものを使用すると機能するようです

それは理にかなっていますか?通常のプロパティのように使用できるように、COM インターフェイスのプロパティを宣言するより良い方法はありますか?