Algoritm för ohanterad (intern) inläsning av bibliotek
Ohanterade bibliotek finns och läses in med en algoritm som omfattar olika steg.
Följande algoritm beskriver hur inbyggda bibliotek läses in via PInvoke
.
PInvoke
läs in biblioteksalgoritmen
PInvoke
använder följande algoritm när du försöker läsa in en ohanterad sammansättning:
active
AssemblyLoadContextFastställ . För ett ohanterat inläsningsbibliotekactive
är AssemblyLoadContext den med sammansättningen som definierarPInvoke
.active
AssemblyLoadContextFör försöker du hitta sammansättningen i prioritetsordning genom att:Kontrollerar dess cacheminne.
Anropa det aktuella System.Runtime.InteropServices.DllImportResolver ombudet som angetts av NativeLibrary.SetDllImportResolver(Assembly, DllImportResolver) funktionen.
Anropa funktionen AssemblyLoadContext.LoadUnmanagedDll på
active
AssemblyLoadContext.Kontrollera instansens AppDomain cacheminne och köra avsökningslogik för ohanterade (interna) bibliotek.
AssemblyLoadContext.ResolvingUnmanagedDll Höja händelsen för
active
AssemblyLoadContext.