Hello all,

I would like to know how do I find what a certain windows' EXEs, DLLs does. As welll as those OCXs, VXDs, etc... PE files that resides in the pretty Windows directory. Does anyone know a good reference that would have directly all this info? ...

I had this idea using some commom controls, knowing that they are in comctl32.dll. Dont you also wonder what the bunch rest does...?

See yaz!
Posted on 2002-12-26 20:18:44 by wicr0s0ft
Some people say that curiosity kills. ( :grin: ) Back to biz, the dll/vxd/
ocx/etc. wich reside inside a Windows OS. Will be mixed by files written
by other software developers, drivers to hw, etc. So in order to use a file
wich you dont know what does. You'll need the documentation(most of the

Ofcourse you can look at the functions in the export section. But
you wouldnt know what it does or howto call it(without doing some extensive

All in all just use the files wich you have the documentation to. Like the ones
you'll find in the MSDN. :alright:
Posted on 2002-12-26 20:31:13 by natas
Yes, I like DANGER... ;)

This one I just thought now: "you say curiosity kills, but I say curiosity skills, babe!!" =D

I know there are a bunch of 3rd party files there (I found on my lil search AOL dll, and I had AOL about 3 years ago tottaly (so I thought) wipped out!!). But what I want, it to use all windows' already made snipets, in order to avoid unnecessary code "duplicates". I mean, if you always have kernel, comctl, shell, and many others always loaded in memory, why don't use them? Why make more code and spent more memory for about the same work? :)

I tried to search for some dll info, but nothing usefull really popped out. I got most errors complaits with the dlls I wanted (forms.dll and browseui/dll, both I 98se, cos 98 doesn't seem to have broseui).

If anyone have something more concrete... :)

Thank you anyway, natas, always good to read from you!

Posted on 2002-12-27 07:12:21 by wicr0s0ft
This one I just thought now: "you say curiosity kills, but I say curiosity skills, babe!!" =D
Well I sayd that "Some people" say that. IMO Curiosity does skill(but may kill in some situations). ( :grin: )
But what I want, it to use all windows' already made snipets, in order to avoid unnecessary code "duplicates". I mean, if you always have kernel, comctl, shell, and many others always loaded in memory, why don't use them? Why make more code and spent more memory for about the same work?
Well you are using the modules loaded in memory when youre calling api. And your
also using Windows little snippets of code. I on the other hand always try to avoid
the windows snippets(api). Creating the same code yourself does not create
unecessary code. It creates optimized code and provide a better control of the
code flow. The api also uses more memory then your own functions would do.

For any other modules not included as a standard under the windows os. Should
not be used wihtout documentation. This could also provide alot of incompatibility
with other windows os, especially if the modules came with a non-standard
windows-os software.

Maybe I have misread what you wanted to do. Maybe im just totally wrong about
the assumptions I have made. Anyhow this is what I think.
Posted on 2002-12-27 13:40:18 by natas
In case of really cross-platform snippets, by all means, use it. It's idiocracy
to reproduce code snippets - as long as it's code snippes that are on a lot
of platforms - as long as it's code snippets that aren't speed critical. If you
have code where speed matters, writing your own optimized versions will
of course make sense - but if speed doesn't reallly matter, just use the
windows versions and conserve memory.
Posted on 2002-12-27 20:35:23 by f0dder
Greetings, :)

Posted on 2002-12-27 21:21:57 by wicr0s0ft
Total agreement, f0dder! :grin:

I just don't know how to do it... :tongue: you will see what and why on my previous reply... have you done some good work on this yet? If so please tell us! :)

Thanks. :alright:
Posted on 2002-12-27 21:26:58 by wicr0s0ft
wicr0s0ft, ofcourse I know that my Windows OS gets more
and more bloated with modules from lame software wich are unable
to cleanup after themself. I can agree with f0dder on some of the things.
However, using modules out of the ordinary, can cause troubles with
newer/older versions of the files and lots of other things. Im not going
to go into all the cons/pros(im to damn tired).

Anyways, lets look at the files you presented shall we?
cabinet.dll: Documentation is available at the MSDN.
urlmon.dll: Documentation is available at the MSDN.
wininet.dll: Documentation is available at the MSDN.
zlib.dll: this is probably a free module, and the only reason
why I have it on my system is because I have Netscape.
timedate.cpl: This is a program, its not loaded at all times. But loaded
when needed.
diskcopy.dll:IIRC, there should be some documentation of this module to.
Just cant recall where i saw it.

Maybe ill say a few more words when I have gotten some sleep. ( ;) )
Posted on 2002-12-27 21:43:19 by natas
just to repeat: no, don't use DLL files that are non-standard. Be sure to
do some research and find out which platforms have the DLLs preinstalled.
Sucks getting a "The dynamic link library msvcp60.dll could not be found in the specified path <blah>".
Posted on 2002-12-28 02:25:26 by f0dder
Yeah, f0dder, I know that sucks.
I don't have those VB dll's... :grin: so I get that Posted on 2002-12-28 08:46:28 by wicr0s0ft

natas! I can't find it there, on MSDN!! :confused:
Before I even posted here, I tried there, but as said, can't find it... maybe I should attach hubble to my head... :tongue:

Well you shouldnt get stuck on one keyword e.g "cabinet.dll". If you
had searched for "cabinet" you would have found it. Also when you do search
for "cabinet.dll" you get a recomendation from MS$:
Best Bets results for Dynamic Link Library (DLL)
And there you'll find information about the dlls you metnioned and many more. :alright:
Posted on 2002-12-28 09:58:31 by natas
Posted on 2002-12-28 10:51:49 by wicr0s0ft

I am not THAT :stupid:

Not to mention that I have seen that place.

I did go there, few minutes ago just to write precisely what is there and whats not.

Yeah, you have a page there, where you put a name of a dll file in a field, and hit search (doing with that cabinet thing). The result will be a page with maaaany DLL with that name, each one with different version numbers... in the first time that made me go look wich version I have (1.00.601.4). By clicking on it a pop window is opened:

Free porn here! CLICK!!

I don't see how that information is usefull. The page don't have any links. It doesn't tell how you use, where you should go if you want to do so, neither anything. One thing that creeps me out, though(maybe this is why Win98 is so cool), is that they have two (very!) different file sizes for the same version of the dll!! :eek: ... go figure...

So, as you two seem to be the only ones here, that ever thought of this, I ask you: do youhave code to do it? Have saved any info on how you did? Anything else??

Thank you very much. :) I now I'm a PITA... :tongue:
Posted on 2002-12-28 11:26:01 by wicr0s0ft
Well I found the information very good to have in your case. Since it tells
you what software packs contains the .dll. Anyway, I must admit that I never
clicked any of the links. I just read "Microsoft® Cabinet File API " and I thought
it would contain what the desccription sayd. Oh well.

And I dont have the time to look for the information you need. Just search for
"cabinet api" or something. Maybe even checkout www.planetsourcecode.com
and search for it there. Use your imagination. :tongue:
Posted on 2002-12-28 12:43:21 by natas
I appreciate your good willing, natas. :) You don't have to search for me.

The reason of my post, is that I spent some time searching it, without much success. As here in this board we have many programmers looking for many similar stuff, I thought that someone could cut my path here. Unfortunately not yet...

Kind regards,

Posted on 2002-12-28 12:51:32 by wicr0s0ft
Whenever I see a question I usually try to provide help if I can. ( :) )
The other source you could look for to find information would be
www.google.com. I did a fast search there and found out that
the Cabinet actualy has its own SDK ( ;) ). http://search.microsoft.com/gomsuri.asp?n=1&c=rp_Results&target=http://msdn.microsoft.com/library/en-us/dncabsdk/html/cabdl.asp

When I search I usually use relevant keywords. When I used google above
I searched for: "programming+cabinet+dll+api". Have phun searching for more! ( ;) )
Posted on 2002-12-28 13:01:09 by natas
Weird, I post a reply to this, but it somewhat is not here!! :confused:


Don't you find it funny a whole SDK to a 80 KB dll?? =D ... maybe someday I try it just to see what is it about...

I have found some significant stuff on MSDN just yesterday, about wininet.dll (should have as well). Wininet has some cool functions that you would use on the internet (FTP related, disk cache related (IE cache, I think), etc.) and they seem to have some documents there. Someone may find this usefull. Microsoft says that developers may want to make "integrated" aplications with a "powerfull" and "complete" engine, blah blah.... that kind of crap... and not really what I wanted. :(

Personally I think I'll "debug" some dll's on a later time, in my pc... :grin:

Again, natas, thank you.

Posted on 2002-12-29 07:27:23 by wicr0s0ft
Hello, bazik,

now I am sure. Do you know anything about my missing reply? :*( ... I really posted it, and now it is missing here. I have the habit to check the thread after I reply to it, but today the reply isn't there anymore... any guesses?

Posted on 2002-12-29 07:46:02 by wicr0s0ft