2012-03-04 13 views
0

私はC++で書かれたDLLを持っており、C++ DLLの関数にC#関数を渡してC++からC#関数を呼び出したいとします。どうすればいい?事前に感謝し、あなたの答えを簡単にしてください。私はこのコードサンプルを投稿する必要はないと思いますが、必要な場合は質問してください。C++ DLLからC#関数を呼び出す

+0

これはLuaと何が関係していますか?あなたはC++コードからC#を呼び出すことを求めています。 –

答えて

4

一般的に、COM InteropとReverse PInvokeの2つの方法があります。ビヘイビアを使用して多くのオブジェクトを渡している場合は、COM相互運用性が最良の可能性があります。ここでは、あなたはちょうど単一の関数を周りに渡そうとしているように聞こえますが。そうであれば、逆PInvokeはあなたが望むものです。

は、ここで基本的なプロセスはいえ、通常のPInvokeにかなり似ている

  • http://blogs.msdn.com/b/thottams/archive/2007/06/02/pinvoke-reverse-pinvoke-and-stdcall-cdecl.aspx
    • http://tigerang.blogspot.com/2008/09/reverse-pinvoke.html
    • テーマに素敵なチュートリアルです。

      • それができるエントリポイントを下

      をデリゲートを渡すマネージコード

    • にデリゲートなどのネイティブポインタを定義
    • 少なくとも一つの関数ポインタを取るネイティブのエントリポイントを定義しますネイティブコードの通常の関数ポインタとして呼び出される

    関連する問題