1

C#を介して.NETアプリケーションで使用されるC静的ライブラリ用のC ++/CLIでラッパーを構築しています

私はCでこのような機能を持っています

long    My_COM_Interface(   PVOID hDevice,IUnknown **pUnknown);

IUnknown **C ++/CLIで宣言する方法

最初の引数として、私はIntPtrを使用していますが、IUknownの代替品を見つけることができません。

別の関数に別のCOMデータ型GUIDがありますが、これも問題です。

データ型IUnknownおよびGUIDのリレースを見つけるのを手伝ってください。

4

3 に答える 3

1

代替品はありません。

C++/CLI は、ネイティブ型を問題なく認識します。適切なヘッダー ファイルをインクルードすれば、いつものように使用できますIUnknown*

于 2011-10-24T21:01:46.053 に答える
0

私はAPIを参照します。

 public static IntPtr GetIUnknownForObject(Object o);

この API は C++/CLR から簡単に使用でき、IntPtr^ を使用することをお勧めします。

于 2011-10-24T08:51:53.520 に答える
-1

次のようなパラメーターを使用してみてください。

ref object pUnknown

そしてそれを次のように使用します

MyObject o = pUnknown as MyObject
于 2011-10-24T08:53:35.853 に答える