指定要延遲載入的 DLL
您可以使用 /delayload:dllname 連結器選項來指定要延遲載入的 DLL。 如果您不打算使用自己的 Helper 函式版本,您也必須連結您的程式與 delayimp.lib (適用於桌面應用程式) 或 dloadhelper.lib (適用於市集應用程式)。
延遲載入 DLL 的簡單範例如下:
// 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);
}
建置專案的偵錯版本。 使用偵錯工具逐步執行程式碼,您會注意到只有在呼叫 MessageBox 時才會載入 user32.dll 。