From: JCO on
Cool..Thanks

"Hector Santos" <sant9442(a)nospam.gmail.com> wrote in message
news:#1EnIQC5KHA.6132(a)TK2MSFTNGP05.phx.gbl...
> JCO wrote:
>
>> VS 2008; C++
>> When creating a dialog application using MFC, I have the option to:
>> 1. Use MFC in a Shared DLL
>> 2. Use MFC in a Static Link DLL
>>
>> Can someone tell me the difference in the two?
>> Can I change from one to the other while I'm still have programming to
>> do?
>> Will one of these options allow my Released Version of my Executable to
>> run on another computer alone (without transferring a DLL to the other
>> computer)?
>>
>> Also; if I need to take DLL's with me to run my dialog, how can I tell
>> what DLL's I need?
>
>
> Just a small note beyonds what others already noted.
>
> There are two types of DLLs:
>
> implicit
> explicit
>
> Implicit are the ones that your EXE has a static link to a DLL.
>
> Explicit are the ones that your EXE will dynamically loaded at run time.
> These applications use LoadLibrary() and GetProcAddress() to dynamically
> link to a DLL.
>
> You can get the implicit links using the DUMPBIN command:
>
> DUMPBIN /IMPORT your_program.exe
>
> This will report the *.DLLs that your application needs to start.
>
> But to get the EXPLICIT DLLs, the EXE needs to actually run so the
> LoadLibrary() commands can be called. This is what the popular utility
> DEPENDS does very well by running and profiling the EXE.
>
> DEPENDS can be downloaded from Microsoft
>
> http://go.microsoft.com/fwlink/?linkid=132640
>
> DEPENDS is a great tool to have (A MUST for all programmers), but DUMPBIN
> /IMPORT gives you the DLLS that are required for your EXE to even start,
> so thats a very quick way to see what is required to even load the EXE.
>
>
> --
> HLS