C# で、ネイティブ ポインターから COM オブジェクト メソッドを呼び出す簡単な方法はありますか?
[DllImport("d3d11.dll", CallingConvention = CallingConvention.StdCall)]
private unsafe static extern int D3D11CreateDevice(
void* arg0, int arg1, void* arg2, int arg3, void* arg4,
int arg5, int arg6, void* arg7, void* arg8, void* arg9);
public static void CreateDevice()
{
unsafe
{
IntPtr deviceOut;
IntPtr immediateContextOut;
int featureLevelRef;
D3D11CreateDevice(
(void*)IntPtr.Zero,
1,
(void*)IntPtr.Zero,
32,
(void*)IntPtr.Zero,
0,
7,
&deviceOut,
&featureLevelRef,
&immediateContextOut);
}
}
上記のコードでは、deviceOut
誰の型が であるかを取得しID3D11Device*
ます。インターフェイスには、 などのID3D11Device
メソッドが多数ありますCreateBuffer()
。
deviceOut
ポインターを使用してこれらのメソッドのいくつかを呼び出すことはできますか? 前もって感謝します。