Subject: Re: How can I get a .dll to resolve at runtime ?
From: Emanuele ALIBERTI <[email-masked]>
To: [email-masked], [email-masked]
Cc: [email-masked]
Date: Thu, 08 Jul 1999 04:49:48 PDT

>I don't think so.  What you'd normally do is have the exe call the dll
>at startup and pass it pointers to its functions, which the dll would
>store in per-process memory (remember that dlls are shared among many
>executables).

The DLL image is actually loaded once and memory mapped n-times in the 
address space of each process that imports from it.

>One thing to try is to export the function with a .DEF file, and see
>if that works.  You'd have to build an import library for your
>executable and link the dll against that, but I'm not sure if NT would
>even *allow* such a hack.

Yes, it works. That is actually a quasi-static linking, because the loader 
fails to initialize a porcess if it does not find each DLL in the process 
image's imports table. You can also call an exported function by calling at 
run-time LoadLibrary() and asking for an entry point with GetProcAddress().

______________________________________________________
Get Your Private, Free Email at http://www.hotmail.com

--
Want to unsubscribe from this list?
Send a message to [email-masked]