thanks,
Mark
--
Mark Wright
mwr...@pro-ns.net
Blue Frog Software, Inc
>I'm currently developing a 16-bit DLL under NT. It crashes pretty
...snip
>frequently, and never gets released by the calling program. When this
>occurs, I am no longer able to overwrite the DLL file, since it still
>has a 'user section mapped' (I don't remember the exact wording). To
>continue, I have to log off and log back on. As you can imagine, this
Don't devlop 16-bit apps ;)....no seriously, shut down all 16-bit
apps, right click on empy space on your task bar. Select Task
Manager, goto the middle tab, forgot what it's called off-hand.
Click on Image Name (think that's it) that will alphabetize the
process listing. Next kill all NTVDM's. (Virtual Dos Machines)
This will wipe all the 16-bit stuff out. You can try just killing
the wowexecs under the NTVDMS.
Either:
Set up your compiler (assuming VC++ 1.5x) so that it starts in a separate
memory space. When your program (not started from VC) crashes, you can
just kill the NTVDM it's in from Task Manager os PVIEW, and your
DLL will be gone with it. If you start your program from VC, killing
NTVDM will kill VC too, but you still won't have to log out.
Or:
Assuming you're using VC, you should have a neat utility called
WPS (Windows Process Status) in your VC\BIN directory, which you can
use to unload only the DLL, assuming WPS is started in the same memory
space as your DLL (calling program).
-zi
--
(Please note that the From: address is invalid. To mail me,
remove the ".---", or use the Reply-to: address.)
pa...@to.icl.fi