Безопаснее загружать файлы .DLL с полным путем. Kernel32 уже загружен, потому что вы статически связаны с LoadLibrary
, так что в вашем конкретном случае это не имеет значения. (Во всех версиях Windows, кроме 2000, CreateProcess
будет загружать Kernel32 в процесс еще до его запуска, но это не относится к другим ядрам .DLL, таким как Gdi32 и User32.)
Если вас беспокоят атаки с использованием .DLL, вы можете вызвать SetDefaultDllDirectories
с флагом LOAD_LIBRARY_SEARCH_SYSTEM32
, что приведет к загрузке всех .DLL с относительным путем для загрузки из системного каталога.