How to find out which Win API functions are called from a compiled c/c++ dll

让人想犯罪 __ 提交于 2021-01-01 04:45:16

问题


I have a compiled C/C++ Dll.

I would like to know which external API function is called by this Dll.

Do you know any tools which can provide these informations.

Thanks.


回答1:


You can use Dependency Walker to see API imports of a DLL. Of course that doesn't tell you if the DLL does dynamic loading, or COM usage.

Next to that you could use the much heavier logexts extension to windbg, which will dump all API calls at runtime.




回答2:


Use the dumpbin utility with the /imports command-line option. There's also a depends.exe utility which as a GUI.

Beware that these won't tell you about functions which you link to use GetProcAddress, nor about interfaces which you access via COM.




回答3:


Dependency Walker (depends.exe) will be your friend.




回答4:


What does mean by external API(are you considering WINAPI as an external API ?). if windows API is not an external API then we can use to DumpBin.exe to display all external api used in the binary. if you want to see the dependent dll/exe of an executable then you can use Depend.exe.




回答5:


AFAIK, dependency walker only shows functions that are called directly, not the ones that are called via function pointers. If you want to find all the APIs that are called, log all the calls to GetProcAddress.




回答6:


Ida Pro, The universally accepted disassembler. It has seperate tab for Import and Export Function.It has several other uses in the field of reverse engineering.



来源:https://stackoverflow.com/questions/3675833/how-to-find-out-which-win-api-functions-are-called-from-a-compiled-c-c-dll

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!