2011-04-28 57 views
1

我想知道在Microsoft Windows操作系統中系統DLL的地址空間範圍是什麼。另外,如果一個DLL被重新分配,這是否意味着使用它的應用程序會崩潰?系統DLLs地址空間

回答

3

DLL重定位是一種常見現象,只是意味着將DLL加載到內存中的位置不是DLL指定的首選基位置(通常是因爲另一個DLL已經佔用了地址空間DLL會「喜歡」使用)。除非DLL對於將在哪裏加載的問題做出一些嚴重缺陷的假設,否則一切都應該很好,並且不會發生崩潰。

使用ProcExp或類似工具查看進程的各個DLL使用的地址空間。

+2

我會添加該系統的DLL _typically_傾向0x70000000範圍及以上。 – 2011-04-28 18:38:40

+0

@保羅 - 歡呼聲,我避免回答那個部分,因爲我多年沒有深入瞭解基地址。 :) – 2011-04-28 18:46:28