Freigeben über


AddDllDirectory-Funktion (libloaderapi.h)

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

Syntax

DLL_DIRECTORY_COOKIE AddDllDirectory(
  [in] PCWSTR NewDirectory
);

Parameter

[in] NewDirectory

Ein absoluter Pfad zum Verzeichnis, das dem Suchpfad hinzugefügt werden soll. Geben Sie beispielsweise \Dir2 an, um dem Prozess-DLL-Suchpfad das Verzeichnis Dir2 hinzuzufügen. 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 fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Die AddDllDirectory-Funktion kann verwendet werden, um dem Satz von Verzeichnissen, die nach einer DLL gesucht werden, einen beliebigen absoluten Pfad hinzuzufügen. Wenn SetDefaultDllDirectories zuerst mit LOAD_LIBRARY_SEARCH_USER_DIRS aufgerufen wird, werden mit AddDllDirectory angegebene Verzeichnisse dem Prozess-DLL-Suchpfad hinzugefügt. Andernfalls werden mit der AddDllDirectory-Funktion angegebene Verzeichnisse 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.

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

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.dll abzurufen. KB2533623 müssen auf der Zielplattform installiert sein.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps],KB2533623 unter Windows 7, Windows Server 2008 R2, Windows Vista und Windows Server 2008
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile libloaderapi.h (einschließlich Windows.h)
DLL Kernel32.dll