Unload unused dll's from memory

  • Thread starter Thread starter derek / nul
  • Start date Start date
_Zo_, venerdì 26/nov/2004:
Can someone verify that my post to the alt.binaries.freeware newsgroup did, in fact,
go through? I've checked and it has not shown up on my server yet. If not, then I'll repost again.

Yes Zo, three times :-)
I checked with the octanews server and then also with terathey are on
both of them.
 
MLC said:
_Zo_, venerdì 26/nov/2004:


Yes Zo, three times :-)
I checked with the octanews server and then also with terathey are on
both of them.

Thanks Maria,

Still hasn't shown up on the news.abs server ??????

Zo
 
omega said:
Not exist for NT/2K/XP ? See quoted conversation excerpts below.

OTOH. Prudens' payware for NT/2K, ExeSpy2000, asserted ability to unload
modules. <$> http://www.spywindows.com/PAGE1/SOFTWARE.HTM </$>

I agree that they can do such a thing in 16-bit environment.
But, I am afraid that it is completely different on NT. I think that you
can't unload library loaded by another process. It would be a serious hole in
the security system.

.............................................................................
Comment from AssafLavie
Date: 08/15/2000 10:44AM PDT

I really don't think it's possible to free a module that's loaded into
another process's address space.

And even if it is possible (though I doubt it) there's the issue of security.
A module is a kernel object and I'm guessing that the token of the caller to
FreeLibrary has to have some rights in the process in order to do that. In
other words, it might not always work...

But correct me if I'm wrong about the ability to FreeLibrary from another
process. I'd like to see the docs that say it's possible.

.............................................................................

Karen,


By chance did you get to try the DLL Manager I found and posted to alt.binaries.freeware?
Interested in knowing if it works? I'm still skeptical when it comes to screwing around with
dll's, etc....

I experimented as far as to open the program and it found 28 items, I then selected only dll's
in the options selection and it found 26 dll's. Still don't know if this is what the original
poster was looking, but its the closes that I could locate so far :-)

Zo

Zo
 
Derek,

I was able to find this small app called DLL Manager, the author's site
is no longer around. The file name for it is dllmgr.zip. When doing a
Google search for it, I found a download site, but from the readme file,
a few files are not included in this zip file:

Required DLLs not supplied with the small download version:
VBRUN100.DLL VB runtime DLL
CMDIALOG.VBX Common Dialog control (from VB PTK)
CMDIALOG.DLL Common Dialog DLL (supplied with Win 3.1)
TOOLHELP.DLL Windows low-level analysis DLL, can't remember whether
it comes with Win 3.1 or the SDK.
THREED.VBX 3D control (from VB PTK)

Of all of the files listed only "cmdialog.vbx". was not found on my
Win98SE system. I located this file and have included in the the zip
file that I just uploaded to the alt.binaries.freeware newsgroup. It is
only 21 kb in size and I hope this is what you are seeking. The site
where I found the original zip file is here:

http://translate.google.com/transla...er/mixed/&prev=/search?q=dllmgr.zip&hl=en&lr=

tiny url version: http://tinyurl.com/4mgeu

This app has the ability to load and unload dll's

It runs just fine on my Win98SE system, should run on others as well.

We are getting very close, but when installed in a w2k machine it can only see
the 16 bit environment.
 
Zo said:
By chance did you get to try the DLL Manager I found and posted to alt.binaries.freeware?

Thanks for the find, Zo. I put a copy of it here:

http://www.redshift.com/~omega/clips/procmon/
Interested in knowing if it works? I'm still skeptical when it comes to screwing around with
dll's, etc....

Well, I didn't have anything loaded that I felt was safe to kick out, so I
couldn't test it for that. I've had the situation periodically in the past
(involving buggy programs), but haven't taken time recently to test around.
I experimented as far as to open the program and it found 28 items, I then selected only dll's
in the options selection and it found 26 dll's.

As Derek noted, this detects only the 16bit Dlls in memory. At the moment,
I've about the same number, ~26, 16bit modules loaded. Then when I launch
PrcView, it is reporting ~170 total modules (a few exes, and the rest dlls)
loaded.
Still don't know if this is what the original
poster was looking, but its the closes that I could locate so far :-)

This brings us up better than when the thread started, where the number
of freeware procmons I knew of with the unload DLL function was zero.
Now we're up to two. WPS & Dllmgr.

Still wondering about 32bit -- in freeware.

The current freeware procmons around, they have commands to unload full
processes in one swoop. But for some reason, all the ones I've seen lack
a command to specifically choose leftovers DLLs.

As well, I'd have liked to have seen comments on possible technical limits
in NT/2000 environment, to target loaded DLLs. (Comments from eg, Terry
Orchard, or one of the Bjorns (all Bjorns are geeks), or others)
 
derek said:
We are getting very close, but when installed in a w2k machine it can only see
the 16 bit environment.

Ok Derek,

I found one that does both 16bit and 32bit. It's called DLL Master ver 4.20. Issued back in 1997 and I'm sorry if anyone has hang-ups with this one.

The only catch is that it was distributed as "shareware" but is has with no apparent expiration period for individuals, if you continue to use it, you
are "requested" to register. (more or less under the honor system). I had problems getting it to install using Total Uninstall, so after repeated
attempts, I finally decided to let it go as far as it would go using TU until it stalled, I terminated the process and rebooting. I then open TU let it
finish what it had accomplished up to the stall and then used the uninstall process to remove what had been processed. Since all uninstalls are sent to
the Recycle Bin, I then proceeded to "Restore" all of the necessary files back the folder that was created doing the install process, this inturn placed
all of the files in the created DLLMSTR folder from which the program can now be run without the benefit of the installation. Since the license agreement
says not to redistribute if altered, I cannot legally upload this to alt.binaries.freeware because it is now minus the install exe. But I thought I pass
on what I did to get to run. For your info, here is an exert from the readme file:

"Thank you for using DLL Master. We hope you will find it a
useful Windows tool. The shareware version is provided for
your evaluation. Individuals who decide to keep using it are
requested to pay the registration fee. Companies and other
organizations MUST register after a 30 day evaluation period. (Please note the "MUST" for companies and other organizations and the "requested" for
individuals)

DLL Master lists all modules currently loaded in Windows'
memory, and allows you to load, unload, or decrement the use
count of DLLs--at your own risk, of course. Module path,
datetime, filesize and internal version and header info are
shown; multiple lists are kept, lists can be compared,
printed, saved to and restored from disk. Specific DLLs can
also be loaded at Windows' startup. DLL Master 4.1 and higher
requires Windows 95 or Windows NT. Use DLL Master 3.3 for
Windows 3.1."

Runs on Win95/98/ME/NT/2000

Here is the link where it can downloaded from:

http://www.winsite.com/bin/Info?961

Zo
 
Suggestion:
Here are two monitoring utilities i use with Win-98SE OS that eliminates
worry about left-behind individual dll's in my system.

They are very useful freeware programs (esp. Total Uninstall).

NOTE:
Not sure but now i think you must be a registered member at PC Mag site
in order to get their free download programs.
You may find a download for it elsewhere though.

UnClean 2.0
http://www.pcmag.com/article2/0,1759,1654703,00.asp

Total Uninstall v2.34
http://www.martau.com/tu.html

Thanks semi,

But not what I am looking for, I wish to unload a dll from memory, not delete it
from the disk.
 
Back
Top