Tech Support > Microsoft Windows > Development Resources > depends.exe, missing dwmapi.dll
depends.exe, missing dwmapi.dll
Posted by TheOne on May 2nd, 2008


While I'm playing with depends.exe tool, I found almost all the
programs in my Xp missing dwmapi.dll while there's no dwmapi.dll in my
system. It looks like the dll is related to vista desktop capability.

Is it ok not having dependent dll? If so, why is it called dependent?
Sometimes, I couldn't start an application because some of dependent
dlls were missing. Does this difference depends on dependency depth?

TIA.

--
Daewon YOON

Posted by Grinder on May 2nd, 2008


TheOne wrote:
If I recall correctly, depends can spot dynamically loaded DLLs, not
just those that are statically linked. It does not, though, make
much/any effort to determine the conditions under which those libraries
*will* be loaded. So, it's possible for an application/library to
contain a reference to a DLL without ever actually needing it.

Posted by Sebastian G. on May 2nd, 2008


Grinder wrote:


No. Dynamically loaded DLLs are those loaded with LoadLibrary(Ex) and
GetModule calls, and depends.exe doesn't look for these.


Well, rather exactly those. There are still two kinds of statically linked
DLLs, those loaded when the dynamic linker traverses the static imports, and
delayed-loaded DLL which are explicit listed as such. dwmapi.dll belongs to
the latter. Especially since depends.exe really explicitly declares it as
delay-loaded.

Posted by Grinder on May 2nd, 2008


Sebastian G. wrote:
It does during application profiling, but I do have something confused.

That's it, thanks for making that correction.



Similar Posts