2014-01-26 100 views
2

我即將開始對我的項目進行重大修改,我只是想澄清一些事情,因爲我認爲我的設計可能有點複雜。可執行文件加載與已經加載的DLL相同的DLL

我有一個可執行文件加載一個dll,讓我們調用這個dll1,然後加載dll2。 該可執行文件還會加載dll2。

我問的是我有dll2的全局和靜態成員變量的兩個實例,第二次加載的dll2發生,或者可以執行只加載1 dll2,即使dll2是由不同的DLL加載?

我知道我應該只有一個在內存中的dll2代碼的副本,這很好。它是我感興趣的全局和靜態變量。

回答

1

每個進程只能加載一個特定DLL的實例。

+0

謝謝,只是我需要的清晰度。 – ceorron

1

您當然可以加載同一個DLL的不同實例,這是實踐並不常見,但它在技術上是可行的。試試Process Explorer。見下面的快照。

enter image description here