 |
AutoHotkey Community Let's help each other out
|
| View previous topic :: View next topic |
| Author |
Message |
sosaited
Joined: 24 Feb 2005 Posts: 233
|
Posted: Mon Mar 20, 2006 7:08 am Post subject: Dll Exported Functions Viewer |
|
|
This Program scans a dll (Or a folder of dll's) for the Exported Functions it contains. It does not display the paramters of the functions, Which i really need, so if someone knows about a program that can also tell the parameters of the functions please post it here
Download Dll export Viewer
Homepage
Description:
| Quote: | This utility displays the list of all exported functions and their virtual memory addresses for the specified DLL files. You can easily copy the memory address of the desired function, paste it into your debugger, and set a breakpoint for this memoery address. When this function is called, the debugger will stop in the beginning of this function.
For example: If you want to break each time that a message box is going to be displayed, simply put breakpoints on the memory addresses of message-box functions: MessageBoxA, MessageBoxExA, and MessageBoxIndirectA (or MessageBoxW, MessageBoxExW, and MessageBoxIndirectW in unicode based applications) When one of the message-box functions is called, your debugger should break in the entry point of that function, and then you can look at call stack and go backward into the code that initiated this API call |
_________________ My small "thanks" to AHK in shape of these dedicated 3d images (Topic already in "General" Forum)  |
|
| Back to top |
|
 |
PhiLho
Joined: 27 Dec 2005 Posts: 6721 Location: France (near Paris)
|
Posted: Mon Mar 20, 2006 10:58 am Post subject: |
|
|
QuickView, which was distributed with older versions of Windows, used to display such information.
Dependency Walker can do that too, and also shows, as the name implies, the dependencies: not only it shows the DLLs statically linked by another DLL or an EXE, but it can even run an EXE and check at runtime the LoadLibrary calls, hence the dynamic dependencies.
AFAIK, I fear there is no mean to see the parameters required by a DLL function. I suppose that theoritically, it can be done by dissassemblying the code of the functions and see where in the heap they take their parameters. But it is easier and more reliable to rely on the API documentation, if available. _________________
vPhiLho := RegExReplace("Philippe Lhoste", "^(\w{3})\w*\s+\b(\w{3})\w*$", "$1$2") |
|
| Back to top |
|
 |
Chris Site Admin
Joined: 02 Mar 2004 Posts: 10467
|
Posted: Mon Mar 20, 2006 12:50 pm Post subject: |
|
|
Dll export Viewer looks like a great utility. I may wind up using it to help debugging.
Thanks. |
|
| Back to top |
|
 |
AHKnow* Guest
|
Posted: Mon Mar 20, 2006 1:35 pm Post subject: |
|
|
I did see a payware program that might do what you want... Its called PE Explorer ( http://www.heaventools.com/PE_Explorer_Exports_Viewer.htm )
Download the trialware. Open a Dll, go to "View" from the menu and select "Export" ( they also have Import ). From Export Viewer (or Import Viewer), select "Syntax Description Editor" (which is the middle icon of 3 on a lower menu). This tool can show you various parameters.
If somebody knows a freeware tool that can do this, than please let us know. |
|
| Back to top |
|
 |
PhiLho
Joined: 27 Dec 2005 Posts: 6721 Location: France (near Paris)
|
Posted: Mon Mar 20, 2006 2:06 pm Post subject: |
|
|
It is interesting, but as you can see in the related Web page, it relies on a database of APIs, ie. it can do nothing with an unknown/artibrary DLL. I suspected that seeing in the screenshot informations like HWND (disassembly would give only "32bit parameter", not the exact type).
This is still useful, but well, you get something similar (probably less extensive) with ApiViewer or the API-Guide.
Of course, PE Explorer has the advantage of being contextual (showing informations on the current DLL). _________________
vPhiLho := RegExReplace("Philippe Lhoste", "^(\w{3})\w*\s+\b(\w{3})\w*$", "$1$2") |
|
| Back to top |
|
 |
AHKnow
Joined: 03 Jul 2004 Posts: 118
|
|
| Back to top |
|
 |
majkinetor
Joined: 24 May 2006 Posts: 3622 Location: Belgrade
|
|
| Back to top |
|
 |
|
|
You can post new topics in this forum You can reply to topics in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|