Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 題名: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Udon
- 日時: 2012/07/04 20:39:48
- ID: 30692
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Azulean
- 日時: 2012/07/04 22:05:25
- ID: 30693
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Udon
- 日時: 2012/07/04 23:03:04
- ID: 30695
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[1]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: 琥珀
- 日時: 2012/07/04 23:06:05
- ID: 30696
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[2]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Udon
- 日時: 2012/07/04 23:08:53
- ID: 30697
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Azulean
- 日時: 2012/07/04 23:18:40
- ID: 30698
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[3]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Azulean
- 日時: 2012/07/04 23:20:17
- ID: 30699
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[4]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Udon
- 日時: 2012/07/04 23:42:04
- ID: 30700
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[5]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Azulean
- 日時: 2012/07/06 0:13:45
- ID: 30709
- この記事の返信元:
- この記事への返信:
- ツリーを表示
- 題名: Re[6]: Unmanaged コードで書かれた DLL から Managed のメソッドをコールバックしたい
- 著者: Udon
- 日時: 2012/07/06 18:04:25
- ID: 30711
- この記事の返信元:
- この記事への返信:
- ツリーを表示
分類:[.NET]
こんにちわ。 Unmanaged(C++) で書かれた DLL から、Managed(C++/CLI)のメソッドをコールバックで呼び出したいのですが、一部はうまくいき、一部は例外が発生してしまいます。 callback +---------------------+ callback +--------|Native DLL(Unmanaged)|-------+ | +---------------------+ | | ↑callback ptr 取得 | +--------------+書 +----------------+ 書+--------------+ |App A(Managed)|-->|MemoryMappedFile|<--|App B(Managed)| +--------------+ +----------------+ +--------------+ MemoryMappedFile に、Managed なアプリ(A/B)がそれぞれコールバックポインタを書き込みます。 Native DLL は、それをMemoryMappedFileから取得し、指定の機会にそれぞれをコールバックする。 というような構成です。 (1)App A がNative DLLを起動している。そして、App Aのコールバックメソッドは問題なく呼び出される。 (2)App B は、同じ手順でポインタ登録をしているが、DLLがコールバックしようとした時に 例外(AccessViolationException)が発生してしまいます。 App B のコールバックメソッドをDLLから問題なく呼び出すには、 どのように解決すればいいのでしょうか? よろしくお願いいたします。