2010-05-03 72 views
0

我有在DLL中在存储器中加载&处理的怀疑,通常DLL是共享库,以便DLL应负载一次是enough.if过程加载DLL(ex.advapi32.dll)到存储器装置,在这之后的另一过程如何指ADVAPI32.DLL这一进程......如何为每个进程有着共同的位置...在系统中的DLL进程?

+1

DLL是存储器映射的,这样他们是共用的,然而这是代码到内存中的只是装载。无论是单身还是代码创建独特的实例,完全取决于您开发库时的情况。 – 2010-05-03 18:35:44

回答

1

我并不完全相信你的问题是什么,但肯定的,如果多个进程导入同一个DLL,那么读 - 该DLL中只有部分通常映射到所有这些进程中。在另一方面,部分可以改变,如BSS(可变)链段,以使得一个工艺使得变化是不可见的其他进程获取每个进程的副本。如果您希望在您的DLL的进程之间共享某些更改,则可以将该DLL中的数据部分标记为共享。您究竟如何做到这一点取决于您使用的开发工具。

+0

每拉森,感谢乌拉圭回合的答复...我得到的dll的共享使用一个明确的说法.... – Rajakumar 2010-05-06 03:59:08