Fungsi LoadPackagedLibrary (winbase.h)

Memuat modul paket yang ditentukan dan dependensinya ke ruang alamat proses panggilan.

Sintaks

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

Parameter

[in] lpwLibFileName

Nama file modul paket yang akan dimuat. Modul dapat menjadi modul pustaka (file .dll) atau modul yang dapat dieksekusi (file .exe).

Jika parameter ini menentukan nama modul tanpa jalur dan ekstensi nama file dihilangkan, fungsi menambahkan ekstensi pustaka default .dll ke nama modul. Untuk mencegah fungsi menambahkan .dll ke nama modul, sertakan karakter titik berikutnya (.) dalam string nama modul.

Jika parameter ini menentukan jalur, fungsi akan mencari jalur tersebut untuk modul. Jalur tidak boleh berupa jalur absolut atau jalur relatif yang berisi ".." di jalur. Saat menentukan jalur, pastikan untuk menggunakan garis miring terbalik (\), bukan garis miring (/). Untuk informasi selengkapnya tentang jalur, lihat Menamai File, Jalur, dan Namespace.

Jika modul yang ditentukan sudah dimuat dalam proses, fungsi mengembalikan handel ke modul yang dimuat. Modul harus awalnya dimuat dari grafik dependensi paket proses.

Jika memuat modul yang ditentukan menyebabkan sistem memuat modul terkait lainnya, fungsi pertama-tama mencari modul yang dimuat, maka ia mencari grafik dependensi paket proses. Untuk informasi selengkapnya, lihat Keterangan.

Reserved

Parameter ini dicadangkan. Harus 0.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan adalah handel ke modul yang dimuat.

Jika fungsi gagal, nilai yang dikembalikan adalah NULL. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError.

Keterangan

Fungsi LoadPackagedLibrary adalah versi LoadLibraryEx yang disederhanakan. Aplikasi paket dapat menggunakan LoadPackagedLibrary untuk memuat modul yang dikemas. Aplikasi yang tidak dikemas tidak dapat menggunakan LoadPackagedLibrary; jika aplikasi yang tidak dikemas memanggil fungsi ini gagal dengan APPMODEL_ERROR_NO_PACKAGE.

LoadPackagedLibrary mengembalikan handel ke modul yang ditentukan dan menambah jumlah referensinya. Jika modul sudah dimuat, fungsi mengembalikan handel ke modul yang dimuat. Proses panggilan dapat menggunakan handel yang dikembalikan oleh LoadPackagedLibrary untuk mengidentifikasi modul dalam panggilan ke fungsi GetProcAddress . Gunakan fungsi FreeLibrary untuk membebaskan modul yang dimuat dan mengurangi jumlah referensinya.

Jika fungsi harus mencari modul yang ditentukan atau dependensinya, fungsi hanya mencari grafik dependensi paket proses. Ini adalah paket aplikasi ditambah dependensi apa pun yang ditentukan seperti <PackageDependency> di bagian <Dependencies> manifes paket aplikasi. Dependensi dicari dalam urutan muncul dalam manifes. Grafik dependensi paket ditentukan di bagian <Dependencies> manifes paket aplikasi. Dependensi dicari dalam urutan muncul dalam manifes. Pencarian berlanjut sebagai berikut:

  1. Fungsi pertama-tama mencari modul yang sudah dimuat. Jika modul yang ditentukan awalnya dimuat dari grafik dependensi paket proses, fungsi mengembalikan handel ke modul yang dimuat. Jika modul yang ditentukan tidak dimuat dari grafik dependensi paket proses, fungsi mengembalikan NULL.
  2. Jika modul belum dimuat, fungsi akan mencari grafik dependensi paket proses.
  3. Jika fungsi tidak dapat menemukan modul yang ditentukan atau salah satu dependensinya, fungsi gagal.
Tidak aman untuk memanggil LoadPackagedLibrary dari DllMain. Untuk informasi selengkapnya, lihat bagian Keterangan di DllMain.

Catatan

Pada Windows Phone, LoadPackagedLibrary harus dipanggil dari PhoneAppModelHost.dll. Penggunaan Kernel32.dll tidak didukung.

Persyaratan

   
Klien minimum yang didukung Windows 8 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2012 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

Urutan Pencarian Pustaka Dynamic-Link