Freigeben über


AddDllDirectory-Funktion (libloaderapi.h)

Fügt dem Prozess-DLL-Suchpfad ein Verzeichnis hinzu.

Syntax

DLL_DIRECTORY_COOKIE AddDllDirectory(
  [in] PCWSTR NewDirectory
);

Die Parameter

[in] NewDirectory

Ein absoluter Pfad zum Verzeichnis, das dem Suchpfad hinzugefügt werden soll. Wenn Sie z. B. das Verzeichnis Dir2 zum Prozess-DLL-Suchpfad hinzufügen möchten, geben Sie \Dir2 an. Weitere Informationen zu Pfaden finden Sie unter Benennen von Dateien, Pfaden und Namespaces.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein undurchsichtiger Zeiger, der an RemoveDllDirectory übergeben werden kann, um die DLL aus dem Prozess-DLL-Suchpfad zu entfernen.

Wenn die Funktion fehlschlägt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Die AddDllDirectory-Funktion kann verwendet werden, um einen absoluten Pfad zu den Verzeichnissen hinzuzufügen, die nach einer DLL gesucht werden. Wenn SetDefaultDllDirectories zuerst mit LOAD_LIBRARY_SEARCH_USER_DIRS aufgerufen wird, werden verzeichnisse, die mit AddDllDirectory angegeben sind, dem Prozess-DLL-Suchpfad hinzugefügt. Andernfalls werden Verzeichnisse, die mit der AddDllDirectory-Funktion angegeben sind, nur für LoadLibraryEx-Funktionsaufrufe verwendet, die LOAD_LIBRARY_SEARCH_USER_DIRS angeben.

Wenn AddDllDirectory verwendet wird, um dem Prozess-DLL-Suchpfad mehrere Verzeichnisse hinzuzufügen, ist die Reihenfolge, in der diese Verzeichnisse durchsucht werden, nicht angegeben.

Verwenden Sie die RemoveDllDirectory-Funktion, um ein verzeichnis zu entfernen, das mit AddDllDirectory hinzugefügt wurde.

Windows 7, Windows Server 2008 R2, Windows Vista und Windows Server 2008: Um diese Funktion in einer Anwendung zu verwenden, rufen Sie GetProcAddress auf, um die Adresse der Funktion aus Kernel32.dllabzurufen. KB2533623 muss auf der Zielplattform installiert werden.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 8 [nur Desktop-Apps],KB2533623 unter Windows 7, Windows Server 2008 R2, Windows Vista und Windows Server 2008
Mindestanforderungen für unterstützte Server Windows Server 2012 [nur Desktop-Apps]
Zielplattform Fenster
Header libloaderapi.h (include Windows.h)
Library kernel32. Befreien
DLL Kernel32.dll