的是這可以查看一個DLL文件的內容和功能...
幾次前,我與OlyDBG玩,然後我發現有查看DLL的內容選項...
所以建議我任何好工具或軟...查看內容的DLL文件
並假設我有一個名爲「Python27.dll」的DLL ...
現在我需要查看此DLL的內容,所以我該怎麼做。 ..
thanx ...
的是這可以查看一個DLL文件的內容和功能...
幾次前,我與OlyDBG玩,然後我發現有查看DLL的內容選項...
所以建議我任何好工具或軟...查看內容的DLL文件
並假設我有一個名爲「Python27.dll」的DLL ...
現在我需要查看此DLL的內容,所以我該怎麼做。 ..
thanx ...
雖然使用起來並不簡單(您需要了解便攜式可執行文件,也就是PE文件的格式),但對於查看DLL或任何其他PE文件而言,pefile似乎是一個很好,功能強大且功能多樣的工具(I不會冒險使用它來更改這樣的文件,雖然我看到它是它的一個特點)。
例如,摘錄模塊的usage examples(和編輯來顯示,而不是他們所使用的同樣假想文件名,這是一個exe ;-)一個DLL:
import pefile
pe = pefile.PE(‘/path/to/pefile.dll’)
for exp in pe.DIRECTORY_ENTRY_EXPORT.symbols:
print hex(pe.OPTIONAL_HEADER.ImageBase + exp.address), exp.name, exp.ordinal
應,根據WIKIPAGE我指出對,顯示是這樣的:
0x7ca0ab4f SHUpdateRecycleBinIcon 336
0x7cab44c0 SHValidateUNC 173
0x7ca7b0aa SheChangeDirA 337
0x7ca7b665 SheChangeDirExA 338
0x7ca7b3e1 SheChangeDirExW 339
0x7ca7aec6 SheChangeDirW 340
0x7ca8baae SheConvertPathW 341
我已經做了一些與ctypes的工作,並在w中加載dll indows,但我不認爲DLL有任何反省。這真的不是什麼大問題,因爲DLL中的所有函數調用都是靜態的。如果您試圖使用未公開的DLL,則不僅需要知道函數的名稱,還需要知道函數的參數。你將不得不逆向設計DLL,這不是一件小事。
所以,在我看來,我會說不。
Dependency Walker可以提供你想要/需要的東西 - 這當然顯示了DLL的所有入口點。