Onbeheerde (systeemeigen) bibliotheek laden algoritme
Onbeheerde bibliotheken bevinden zich en worden geladen met een algoritme met verschillende fasen.
In het volgende algoritme wordt beschreven hoe systeemeigen bibliotheken worden geladen.PInvoke
PInvoke
algoritme voor laden van bibliotheek
PInvoke
gebruikt het volgende algoritme bij het laden van een onbeheerde assembly:
Bepaal de
active
AssemblyLoadContext. Voor een niet-beheerde laadbibliotheek is AssemblyLoadContextactive
degene met de assembly waarmee dePInvoke
.active
AssemblyLoadContextProbeer de assembly in volgorde van prioriteit te vinden op:Controleer de cache.
De huidige System.Runtime.InteropServices.DllImportResolver gemachtigde aanroepen die door de NativeLibrary.SetDllImportResolver(Assembly, DllImportResolver) functie is ingesteld.
AssemblyLoadContext.LoadUnmanagedDll De functie aanroepen in
active
AssemblyLoadContext.Controleer de cache van het AppDomain exemplaar en voer de testlogica van de onbeheerde (systeemeigen) bibliotheek uit.
AssemblyLoadContext.ResolvingUnmanagedDll De gebeurtenis voor AssemblyLoadContext
active
verhogen.