Suporte de vinculador para DLLs carregadas com atraso
O vinculador Visual C++ agora oferece suporte depois de carregar a DLL. Isso alivia-o da necessidade de usar as funções LoadLibrary e GetProcAddress de Windows SDK para implementar atrasado carregar a DLL.
Antes do Visual C++ 6.0, a única maneira de carregar uma DLL estava em tempo de execução usando LoadLibrary e GetProcAddress; o sistema operacional carrega o DLL quando o executável ou a DLL que usam o foram carregados.
A partir do Visual C++ 6.0, estaticamente ao vincular a uma DLL, o vinculador fornece opções para atrasar ao carregar a DLL até que o programa chamar uma função em que o DLL.
Um aplicativo pode retardar a carga uma DLL usando a opção do vinculador de /DELAYLOAD (Importação de carga de atraso) com uma função auxiliar (implementação padrão fornecida pelo Visual C++). A função auxiliar carregará a DLL em tempo de execução chamando LoadLibrary e GetProcAddress para você.
Você deve considerar o atraso que carrega um DLL se:
O programa não pode chamar uma função na DLL.
Uma função na DLL não pode obter chamado até depois da execução do programa.
Depois de carregar uma DLL pode ser especificado durante a criação de um projeto de .EXE ou de .DLL. Um projeto de .DLL que atrasa a carga de um ou mais DLL não devem própria chamada um ponto de entrada atraso- carregado em Dllmain.
Os tópicos a seguir descrevem DLL de carga de atraso: