LoadPackagedLibrary-Funktion (winbase.h)

Lädt das angegebene verpackte Modul und seine Abhängigkeiten im Adressraum des Aufrufvorgangs.

Syntax

HMODULE LoadPackagedLibrary(
  [in] LPCWSTR lpwLibFileName,
       DWORD   Reserved
);

Parameter

[in] lpwLibFileName

Der Dateiname des verpackten Moduls, das geladen werden soll. Das Modul kann ein Bibliotheksmodul (eine .dll Datei) oder ein ausführbares Modul (eine .exe Datei) sein.

Wenn dieser Parameter einen Modulnamen ohne Pfad angibt und die Dateinamenerweiterung nicht angegeben wird, fügt die Funktion die Standardbibliothekserweiterung .dll an den Modulnamen an. Um zu verhindern, dass die Funktion .dll an den Modulnamen anfügen kann, fügen Sie ein nachgestelltes Punktzeichen (.) in die Modulnamenzeichenfolge ein.

Wenn dieser Parameter einen Pfad angibt, durchsucht die Funktion diesen Pfad für das Modul. Der Pfad kann kein absoluter Pfad oder ein relativer Pfad sein, der "." im Pfad enthält. Wenn Sie einen Pfad angeben, müssen Sie backslashes (\), keine Schrägstriche (/) verwenden. Weitere Informationen zu Pfaden finden Sie unter Benennen von Dateien, Pfaden und Namespaces.

Wenn das angegebene Modul bereits im Prozess geladen wird, gibt die Funktion einen Handle an das geladene Modul zurück. Das Modul muss ursprünglich aus dem Paketabhängigkeitsdiagramm des Prozesses geladen worden sein.

Wenn das angegebene Modul geladen wird, führt das System dazu, andere zugeordnete Module zu laden, durchsucht die Funktion zuerst geladene Module, und durchsucht es das Paketabhängigkeitsdiagramm des Prozesses. Weitere Informationen finden Sie in den Hinweisen.

Reserved

Dieser Parameter ist reserviert. Es muss 0 sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Handle für das geladene Modul.

Wenn die Funktion fehlschlägt, ist der Rückgabewert NULL. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Bemerkungen

Die LoadPackagedLibrary-Funktion ist eine vereinfachte Version von LoadLibraryEx. Windows-Runtime Apps können LoadPackagedLibrary verwenden, um verpackte Module zu laden. Desktopanwendungen können LoadPackagedLibrary nicht verwenden; wenn eine Desktopanwendung diese Funktion aufruft, schlägt sie mit APPMODEL_ERROR_NO_PACKAGE fehl.

LoadPackagedLibrary gibt einen Handle an das angegebene Modul zurück und erhöht seine Referenzanzahl. Wenn das Modul bereits geladen wird, gibt die Funktion einen Handle an das geladene Modul zurück. Der Aufrufprozess kann den von LoadPackagedLibrary zurückgegebenen Handle verwenden, um das Modul in Aufrufen der GetProcAddress-Funktion zu identifizieren. Verwenden Sie die FreeLibrary-Funktion , um ein geladenes Modul freizustellen und die Referenzanzahl zu verringern.

Wenn die Funktion nach dem angegebenen Modul oder deren Abhängigkeiten suchen muss, wird nur das Paketabhängigkeitsdiagramm des Prozesses durchsucht. Dies ist das Paket der Anwendung sowie alle Abhängigkeiten, die im <Dependencies> Abschnitt des Paketmanifests der Anwendung angegeben <PackageDependency> sind. Abhängigkeiten werden in der Reihenfolge gesucht, in der sie im Manifest angezeigt werden. Das Paketabhängigkeitsdiagramm wird im <Dependencies> Abschnitt des Paketmanifests der Anwendung angegeben. Abhängigkeiten werden in der Reihenfolge gesucht, in der sie im Manifest angezeigt werden. Die Suche geht wie folgt fort:

  1. Die Funktion sucht zuerst Module, die bereits geladen werden. Wenn das angegebene Modul ursprünglich aus dem Paketabhängigkeitsdiagramm des Prozesses geladen wurde, gibt die Funktion einen Handle an das geladene Modul zurück. Wenn das angegebene Modul nicht aus dem Paketabhängigkeitsdiagramm des Prozesses geladen wurde, gibt die Funktion NULL zurück.
  2. Wenn das Modul noch nicht geladen ist, durchsucht die Funktion das Paketabhängigkeitsdiagramm des Prozesses.
  3. Wenn die Funktion das angegebene Modul oder eine seiner Abhängigkeiten nicht finden kann, schlägt die Funktion fehl.
Es ist nicht sicher, LoadPackagedLibrary von DllMain aufzurufen. Weitere Informationen finden Sie im Abschnitt "Hinweise" in DllMain.

Hinweis

Auf Windows Phone muss LoadPackagedLibrary von aufgerufen PhoneAppModelHost.dllwerden. Die Verwendung Kernel32.dll wird nicht unterstützt.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile winbase.h (enthalten Windows.h)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

Dynamic Link Library-Suchreihenfolge