Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Biblioteki niezarządzane są lokalizowane i ładowane za pomocą algorytmu obejmującego różne etapy.
Poniższy algorytm opisuje sposób ładowania bibliotek natywnych za pomocą metody PInvoke.
PInvoke ładowanie algorytmu biblioteki
PInvoke używa następującego algorytmu podczas próby załadowania niezarządzanego zestawu:
Określ
activeAssemblyLoadContext. W przypadku niezarządzanej biblioteki ładowania, elementactiveAssemblyLoadContext jest powiązany z zestawem definiującymPInvoke.W przypadku elementu
activeAssemblyLoadContextspróbuj znaleźć zestaw w kolejności priorytetu przez:Sprawdzanie jego pamięci podręcznej.
Wywołanie bieżącego System.Runtime.InteropServices.DllImportResolver delegata, który został ustawiony przez funkcję NativeLibrary.SetDllImportResolver(Assembly, DllImportResolver).
Wywoływanie AssemblyLoadContext.LoadUnmanagedDll funkcji na obiekcie
activeAssemblyLoadContext.AppDomain Sprawdzanie pamięci podręcznej wystąpienia i uruchamianie logiki sondowania bibliotek niezarządzanych (natywnych).
AssemblyLoadContext.ResolvingUnmanagedDll Podniesienie zdarzenia dla
activeelementu AssemblyLoadContext.