2017-07-28 95 views
0

我得到一個與無法加載的DLL相關的異常,但是...沒有項目似乎引用該DLL。如何調查.NET DLL依賴關係?

我怎麼知道誰在呼叫它?

+2

如果它是託管的,請查看[Fuslogvw.exe](https://docs.microsoft.com/zh-cn/dotnet/framework/tools/fuslogvw-exe-assembly-binding-log-viewer) dll或[Dependency Walker](http://www.dependencywalker.com/)如果它是本地dll。 –

+0

@ScottChamberlain謝謝!! – Revious

+1

噴射大腦dotPeek –

回答

0

從Visual Studio命令提示符處運行ildasm。你會發現ildasm在與Visual Studio相同的文件夾(devenv)

藉助ildasm,您可以借出一個程序集,然後將其拆卸回IL。這在大多數情況下並不是很有用,但它也可以讓您訪問組件的清單。
enter image description here

雙擊Manifest,您將獲得該Assembly的清單。您對頂部的東西感興趣,這將成爲所有裝配參考。 enter image description here

拉出每個引用的程序集清單,你會發現一個依賴程序集導致問題。