Linking Dlls to an exe

In this project that I am involved in there is a number of Dlls going to be linked to the main exe.
1/ I have just being told that load time of the application is not important (not too sure why). So does it matter if all the dlls are linked to the exe by implicit linking. Seen as the time taken to map and load all the dlls at load time is not important. What I am wondering is that if all the dlls are linked by implicit linking, does this effect the efficiency of the whole application at run time, and if so a quick  explanation please.
2/ The login in Dialog/ User administrator list of the application are in one Dll. Should this be linked via implicit linking (even if explicit is used for the other Dlls). This may be quite a stupid question.
3/ When using the

lpfnDllFunc1 = (LPFNDLLFUNC1)GetProcAddress(hDLL,
                                           "DLLFunc1");
in the exe to explicitly link, how do you pass the function ID as the ordinal value in the def file of the dll.
lpfnDllFunc1 = (LPFNDLLFUNC1)GetProcAddress(hDLL, 2);
doesn`t work!
martythegreatAsked:
Who is Participating?
 
polimetlaCommented:
Ans for Q1: An application that implicitly links to many DLLs can be slow to start because Windows loads all the DLLs when the application loads. To improve startup performance, an application can implicitly link to those DLLs needed immediately after loading and wait to explicitly link to the other DLLs when they are needed.

Ans for Q2: you can't. because to link implicitly we need .lib and .h file also. If you got those files you can link implicitly.

Ans for Q3: Here we are passing Function name only. No need to pass Ordinal value.

Note: For more info. Please see VC++ help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.