簡體   English   中英

查找LIB的已加載DLL

[英]Find loaded DLL for LIB

在VS 2005中,我可以通過在IDE中顯式設置選項來查看libs鏈接程序的路徑。 如何找到從中加載相應dll位置?

1>Searching libraries
1>    Searching C:\Program Files (x86)\Microsoft Visual Studio 8\VC\lib\msvcrtd.lib:
1>      Found _memcpy
1>        Referenced in deflate.obj
1>        Referenced in gzio.obj
1>        Referenced in infback.obj
1>        Referenced in inflate.obj
1>        Loaded msvcrtd.lib(MSVCR80D.dll)

在上述情況下, MSVCR80D.dll是從哪里來的? 我在VC目錄中搜索dll,並彈出了10多個結果。 有什么簡單的方法可以找到確切加載的一個?

這些DLL實際上是在運行時而不是在鏈接時加載的。 實際上,本地DLL甚至不必存在於計算機中即可進行鏈接。

您可以看到該信息在調試器(通常為F5)中運行程序,並從“調試”子菜單IIRC中打開“模塊窗口”。

另外,您可以分析可執行文件,然后嘗試推斷將加載哪個DLL。 無疑,最好的工具是Dependency Walker 它也可以分析DLL(很酷),但可能會對托管DLL造成麻煩。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM