Especificando as DLLs para carregamento de atraso

Você pode especificar quais DLLs para atrasar a carregar com o /delayload:dllname opção de vinculador.Se você não planeja usar sua própria versão de uma função auxiliar, você também deve vincular seu programa com Delayimp.lib.

Este é um exemplo simples de uma DLL de carregamento com atraso:

// cl t.cpp user32.lib delayimp.lib  /link /DELAYLOAD:user32.dll
#include <windows.h>
// uncomment these lines to remove .libs from command line
// #pragma comment(lib, "delayimp")
// #pragma comment(lib, "user32")

int main() {
   // user32.dll will load at this point
   MessageBox(NULL, "Hello", "Hello", MB_OK);
}

Crie a versão de depuração do projeto.Percorra o código usando o depurador e você irá notar que User32. dll é carregado somente quando você faz a chamada para MessageBox.

Consulte também

Conceitos

Suporte de vinculador para DLLs carregado com atraso