Start New Discussion within our Software Development Community

Hi all,

This is charan new member of this team.

Iam having one Question to all of you

What is the difference between static and dynamic Dll and how the mechanisim of static dll goes in VC++
---------------------------------------------------------------------

You can have a DLL without DllMain function. Its purpose is for Windows to notify your DLL of various events that might be of interest to it, e.g. whenever another EXE or DLL loads it etc.

_declspec (dllexport) is a Microsoft specific extension for the compiler to tell it to export your function "bla", so that other DLLs and EXEs can link to it and use it. Other way to accompilsh the same is to use the DEF file and specify your exports there.

void _stdcall bla() is just a normal function visible to your DLL only. _stdcall is specifying standard (or PASCAL) calling convention (as opposed to _cdecl or C calling convention).

<<split to keep from resurrecting the quoted dead thread>>

Hi all,

This is charan new member of this team.

Iam having one Question to all of you

What is the difference between static and dynamic Dll and how the mechanisim of static dll goes in VC++

The terms static and dynamic do not describe the features of a DLL but how the application program uses them. Any dll which has a *.lib file can be statically linked to the program via its .lib file, just add the name of the library to the list of libraries processed by the linker. Or the DLL can be loaded into memory at runtime by calling the win32 api function LoadLibrary().

This article has been dead for over six months. Start a new discussion instead.