View Single Post
Old 17-02-2015, 07:04 PM   #13
Japo
Autonomous human
 
Japo's Avatar


 
Join Date: Mar 2006
Location: ,
Posts: 4,613
Default

On 64-bit Windows, DLLs for 32-bit processes are loaded from syswow64 instead of system32; system32 is (despite the name) for 64-bit DLLs. It's confusing but considering history it makes some sense :P

Of course you can see both directories if you look via their actual paths, but that's unrelated. 32-bit processes can see true system32 too. But when linking to a DLL it's in principle Windows who finds the DLL file from a name without path.

All this applies to native C DLLs.

It's also possible to place a DLL in the same folder as the program that needs it, which also allows for different programs that use incompatible versions of the same DLL name. This applies to .NET DLLs as well as C ones, but not COM ones.

Anyway neither COM nor .NET DLLs go in the Windows system directory for global use, only C ones.
__________________
Life starts every day anew. Prospects not so good...

Last edited by Japo; 17-02-2015 at 07:14 PM.
Japo is offline                         Send a private message to Japo
Reply With Quote