LoadLibrary
E724276
LoadLibrary is a Windows API function that dynamically loads a DLL into a process’s address space so its exported functions can be used at runtime.
Statements (47)
| Predicate | Object |
|---|---|
| instanceOf |
Windows API function
ⓘ
dynamic linking function ⓘ |
| callingConvention | stdcall ⓘ |
| category | process and module management API ⓘ |
| characterEncodingVariant |
LoadLibraryA is ANSI version
ⓘ
LoadLibraryW is Unicode version ⓘ |
| definedIn | Win32 API NERFINISHED ⓘ |
| definedInHeader | windows.h ⓘ |
| effect | maps a specified DLL module into the address space of the calling process ⓘ |
| errorReporting | GetLastError ⓘ |
| failureCondition |
dependency DLL missing
ⓘ
insufficient address space ⓘ insufficient memory ⓘ specified DLL is not a valid Win32 application ⓘ specified DLL not found ⓘ |
| languageBinding |
C
NERFINISHED
ⓘ
C++ NERFINISHED ⓘ |
| library | Kernel32.dll ⓘ |
| minimumVersion | available since early versions of Win32 ⓘ |
| operatingSystem |
Windows
ⓘ
surface form:
Microsoft Windows
|
| parameter | LPCSTR lpLibFileName ⓘ |
| parameterDescription | lpLibFileName specifies the name of the module to load ⓘ |
| platform |
Win32
NERFINISHED
ⓘ
Win64 ⓘ |
| primaryPurpose | dynamically load a DLL into a process address space ⓘ |
| referenceCounting | increments module reference count ⓘ |
| relatedFunction |
LoadLibraryA
ⓘ
LoadLibraryEx ⓘ LoadLibraryW ⓘ |
| returns |
HMODULE handle to the loaded module on success
ⓘ
NULL on failure ⓘ |
| searches | DLL search path defined by Windows ⓘ |
| securityConsideration | DLL search order can lead to DLL preloading attacks ⓘ |
| securityMitigation |
use SetDefaultDllDirectories or AddDllDirectory
ⓘ
use fully qualified paths to DLLs ⓘ |
| supports |
absolute DLL path
ⓘ
loading delay-loaded modules manually ⓘ relative DLL path ⓘ |
| threadSafety | not inherently thread-safe for concurrent loads of same module name ⓘ |
| unloadCondition | module unloaded when reference count reaches zero ⓘ |
| unloadMechanism | FreeLibrary decrements module reference count ⓘ |
| usagePattern | load DLL then retrieve exported function addresses at runtime ⓘ |
| usedIn |
applications requiring optional or late-bound features
ⓘ
plugin architectures ⓘ runtime extensibility systems ⓘ |
| usedWith |
FreeLibrary
ⓘ
GetProcAddress NERFINISHED ⓘ |
Referenced by (1)
Full triples — surface form annotated when it differs from this entity's canonical label.