Grundsätzlich, was Sie tun, ist die DLL in Frage zu setzen, um in der Verzögerung laden Abschnitt sein. Es wird dann diese DLL nicht laden, bis Sie eine Funktion aufrufen, die sich in dieser DLL befindet.
Der Visual C++ Linker unterstützt nun die verzögerte Laden von DLLs. Dieses befreit Sie von der Notwendigkeit, die Windows SDK-Funktionen LoadLibrary und GetProcAddress zu verwenden, verzögerte DLL laden zu implementieren.
Vor Visual C++ 6.0 war die einzige Möglichkeit zum Laden einer DLL zur Laufzeit mit LoadLibrary und GetProcAddress; Das Betriebssystem würde die DLL laden, wenn die ausführbare Datei oder DLL, die es verwendet, geladen wurde. Wenn Sie mit Visual C++ 6.0 eine statische Verknüpfung mit einer DLL herstellen, bietet der Linker Optionen zum Verzögern des Ladens der DLL, bis das Programm eine Funktion in dieser DLL aufruft.
Eine Anwendung kann verzögern laden eine DLL mithilfe der /DELAYLOAD (Delay Load Import) Linker-Option mit einer Hilfsfunktion (Standardimplementierung von Visual C++ bereitgestellt). Die Hilfefunktion lädt die DLL bei Ausführung Zeit durch Aufrufen von LoadLibrary und GetProcAddress für Sie.
Sie sollten Verzögerung Laden einer DLL betrachten, wenn
Ihr Programm keine Funktion in der DLL aufrufen kann.
Eine Funktion in der DLL wird möglicherweise erst spät in der Ausführung Ihres Programms aufgerufen.
Das verzögerte Laden einer DLL kann während der Erstellung von entweder ein .EXE- oder ein .DLL-Projekt angegeben werden. Ein .DLL-Projekt, das das Laden einer oder mehrerer DLLs verzögert, sollte einen verzögerungsgeladenen Einstiegspunkt in Dllmain nicht selbst aufrufen.
Fragen Sie, wie verzögertes Laden funktioniert oder wie Sie es anwenden können? – xtofl