pinvoke dll的正确实例

时间:2012-10-02 16:29:46

标签: c# silverlight pinvoke

我有两个调用dll的程序。我想让他们都确保调用dll的相同实例,以便它可以用来来回传递信息。

如何正确地对相同的实例进行异步,以便两个程序都在同一个dll上进行通信,并且可以使用dll作为反向pinvokes和回调的中间来回传递信息。

pinvoke不是这样做的方法吗?有没有更好的办法?

2 个答案:

答案 0 :(得分:2)

它被称为“DLL中的共享部分”,它会让你以某种方式在加载该DLL的所有进程之间共享数据。

由于代码在不同的进程中运行,您将无法共享回调。您需要某种IPC(进程间通信)机制才能做到这一点。

总的来说,我建议不要这样做,因为这是在应用程序之间共享数据的不寻常方法。您不太可能找到帮助并抽样如何做到这一点,并且需要阅读本书(Windows Internals,无论如何都是有用的阅读),以便自己正确地完成。

答案 1 :(得分:0)

使用Interprocess Communication with WCF

DLL用于共享代码,而不是共享数据。