in Managed/Util/GACManagedAccess.cs [60:83]
internal GacAssembly(string assemblyName)
{
_assemblyName = assemblyName;
int hResult = PInvoke.Fusion.NativeMethods.CreateAssemblyNameObject(
out _fusionName,
_assemblyName,
PInvoke.Fusion.CreateAssemblyNameObjectFlags.CANOF_PARSE_DISPLAY_NAME,
IntPtr.Zero);
if (hResult >= 0)
{
hResult = PInvoke.Fusion.NativeMethods.CreateAssemblyEnum(
out _assemblyEnum,
IntPtr.Zero,
_fusionName,
PInvoke.Fusion.AssemblyCacheFlags.GAC,
IntPtr.Zero);
}
if (hResult < 0 || _assemblyEnum == null)
{
throw Marshal.GetExceptionForHR(hResult);
}
}