?
Solved

DLL Functions/Procedures

Posted on 1999-07-06
18
Medium Priority
?
222 Views
Last Modified: 2010-04-06
Hi All.

Ages ago I had a program which could tell you what functions and procedures were inside a DLL, plus what parameters were required, and what types were returned.  Can anyone think of a similar application?  I am in desperate need of something like this quickly as I am writing an interface for another application and the only communication methods I have is via DLLs :(

Thanks for any help

Stuart.
0
Comment
Question by:Stuart_Johnson
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 8
  • 4
  • 2
  • +4
18 Comments
 
LVL 15

Expert Comment

by:simonet
ID: 1386868
Hello, Stuart!

I've seen programs that can tell what functions are inside a DLL, but I have never seen a single application, not even the best disassembler around, that can tell you what the parameters are for the functions in the DLL.

I believe I have some code laying around on my HDs that allows you retrieve the functions in a DLL... I'll be looking for it and get back to you soon. However, as I said, don't hold your breath waiting for code that can give the parameters of the functions.

Alex
0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386869
Bummer.  Thanks anyway mate.  If you can find something, let me know.  That would be a good start just finding the function/procedure names out.

Stu.
0
 
LVL 3

Expert Comment

by:philipleighs
ID: 1386870
You can see function names by looking at the export table in QuickView.

Cheers,
Phil.

0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386871
QuickView, or QuickView Pro?  Because my QuickView doesnt find any exports at all in the DLL.  I know QuickView Pro used to.

Stu.
0
 
LVL 3

Expert Comment

by:philipleighs
ID: 1386872
Hmm, don't know about that.
I just right click in explorer on a dll, and click Quick View.

The version I have is the one that came with the NT4.

I think it is possible for a dll to expose functions but not list them in the export table. Maybe this is what you're seeing?

Phil.

0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386873
Mmm.  I dont know.  Maybe the version of QV for NT is better than the standard distributed copy of QV 95.  Just a wild stab in the dark.

I think I may have QuickView Pro floating around somewhere.  I'll see if that does anything.

Thanks for the comments, Phil.
0
 
LVL 2

Expert Comment

by:kotik
ID: 1386874
Hi, Stuart

You can use TDUMP.EXE application to get exported functions. You can find it in <DELPHI_DIR>\BIN
Maybe it can help you, but sometimes it doesn't show any func in Export section.

Regards,
Kot  
0
 
LVL 8

Expert Comment

by:TOndrej
ID: 1386875
download GExperts source code, there's a good component for the PE Info wizard
http://www.gexperts.com/gexperts/
0
 
LVL 8

Expert Comment

by:ZifNab
ID: 1386876
mmmm, I've seen something around, maybe this can help?

http://www.torry.ru/samples/samples/vers_src.zip

It's for D1, dough... and I'm totally not sure if this gives the opertunity to detect the functions/procedures.

I'll look further.

Zif.
0
 
LVL 1

Expert Comment

by:rpo
ID: 1386877
PE executables (Dll, EXE) do not hold information about imported/exported functon parameters but they hold lists of those functoins which include index and (optionally) functoin names.
This information can be retreived using Quick View Plus or much more informative Dependency Walker by Steve P. Miller. It shows all available information in PE header.
Tthis program is copyrighted by Microsoft but is free. I do not know where it's possible to get it but i can send it by request.
0
 
LVL 15

Expert Comment

by:simonet
ID: 1386878
Stuart, did you get my e-mail with the link to DLLView?
0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386879
rpo.  Can you upload it for me?  Its probably easier than e-mailing to me.  FTP:  203.56.189.3  Its just an annonymous login.  Stick it in /Stuart

Cheers,

Stu
0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386880
rpo.  Cancel that mate. The FTP server has just gone down :(  Can you please email it too me if it isnt too big (5mb limit unfortunately).  stuartj@futureschool.com.au

Thanks a million.

Stu.
0
 
LVL 15

Expert Comment

by:simonet
ID: 1386881
Oh... I thought you wanted to find the functions in the DLL through code. I didn't think a standalone application would do it for you.

I believe I have some standalone application here too. Hold on...

Alex
0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386882
Alex,

Your program is fantastic.  Dont bother looking for anything else.  The code alone is brilliant.  I can change it to suit what ever task I am doing.

I am just giving 'rpo' the oppotunity to send me something as well seeing as though he offered to do so.

Thanks a lot.

Stu.
0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386883
Alex,

As I have finished the project now and your app worked perfectly - it actually gave me more info than I needed with the inclusion of the source code, could please post an answer for me so I can grade you (with a 'D' <G>).

Thanks mate.


Stu.
0
 
LVL 15

Accepted Solution

by:
simonet earned 280 total points
ID: 1386884
Good! I am glad it helped!

Good luck, Stu!

Alex
0
 
LVL 6

Author Comment

by:Stuart_Johnson
ID: 1386885
Thank you, Alex.  Much appreciated.

Roman.  Thank you as well for the effort you put in.  I appreciate you sending me the program.  However, the code that Alex sent me not only did the job for me, it also gave me some information on how to access DLLs a bit better.

Thank you all.

All the best.

Stuart
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Hello everybody This Article will show you how to validate number with TEdit control, What's the TEdit control? TEdit is a standard Windows edit control on a form, it allows to user to write, read and copy/paste single line of text. Usua…
In this video, Percona Director of Solution Engineering Jon Tobin discusses the function and features of Percona Server for MongoDB. How Percona can help Percona can help you determine if Percona Server for MongoDB is the right solution for …
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Suggested Courses

719 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question