Compartir por


Assembly.Load Método

Definición

Carga un ensamblado.

Sobrecargas

Nombre Description
Load(Byte[], Byte[], SecurityContextSource)

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente símbolos y especificando el origen para el contexto de seguridad.

Load(Byte[], Byte[], Evidence)
Obsoletos.

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente símbolos y evidencias para el ensamblado.

Load(String, Evidence)
Obsoletos.

Carga un ensamblado con su nombre para mostrar y usa la evidencia proporcionada.

Load(AssemblyName, Evidence)
Obsoletos.

Carga un ensamblado dado su AssemblyName. El ensamblado se carga mediante la evidencia proporcionada.

Load(Byte[])

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido.

Load(String)

Carga un ensamblado con el nombre especificado.

Load(AssemblyName)

Carga un ensamblado dado su AssemblyName.

Load(Byte[], Byte[])

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido, que opcionalmente incluye símbolos para el ensamblado.

Load(Byte[], Byte[], SecurityContextSource)

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente símbolos y especificando el origen para el contexto de seguridad.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore, System::Security::SecurityContextSource securityContextSource);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, System.Security.SecurityContextSource securityContextSource);
static member Load : byte[] * byte[] * System.Security.SecurityContextSource -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte(), securityContextSource As SecurityContextSource) As Assembly

Parámetros

rawAssembly
Byte[]

Matriz de bytes que es una imagen basada en COFF que contiene un ensamblado emitido.

rawSymbolStore
Byte[]

Matriz de bytes que contiene los bytes sin procesar que representan los símbolos del ensamblado.

securityContextSource
SecurityContextSource

Origen del contexto de seguridad.

Devoluciones

Ensamblado cargado.

Excepciones

rawAssembly es null.

rawAssembly no es un ensamblado válido para el entorno de ejecución cargado actualmente.

El valor de securityContextSource no es uno de los valores de enumeración.

Comentarios

El ensamblado se carga en el dominio de aplicación del autor de la llamada mediante el origen especificado para el contexto de seguridad. Si rawSymbolStore se especificó, también se cargan los bytes sin formato que representan los símbolos del ensamblado.

Se aplica a

Load(Byte[], Byte[], Evidence)

Precaución

This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente símbolos y evidencias para el ensamblado.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore, System::Security::Policy::Evidence ^ securityEvidence);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, System.Security.Policy.Evidence securityEvidence);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore, System.Security.Policy.Evidence securityEvidence);
static member Load : byte[] * byte[] * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : byte[] * byte[] * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte(), securityEvidence As Evidence) As Assembly

Parámetros

rawAssembly
Byte[]

Matriz de bytes que es una imagen basada en COFF que contiene un ensamblado emitido.

rawSymbolStore
Byte[]

Matriz de bytes que contiene los bytes sin procesar que representan los símbolos del ensamblado.

securityEvidence
Evidence

Evidencia para cargar el ensamblado.

Devoluciones

Ensamblado cargado.

Atributos

Excepciones

rawAssembly es null.

rawAssembly no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

securityEvidence no nulles . De forma predeterminada, la directiva CAS heredada no está habilitada en .NET Framework 4; cuando no está habilitado, securityEvidence debe ser null.

Comentarios

Esta sobrecarga de método siempre crea un nuevo Assembly objeto en su propio contexto de carga aislado.

El ensamblado se carga mediante la evidencia proporcionada. Los bytes sin procesar que representan los símbolos del ensamblado también se cargan.

La concesión de permisos específicos para un ensamblado se basa en la evidencia. Las reglas para la combinación de evidencias de ensamblado y seguridad son las siguientes:

  • Cuando se usa un Load método sin Evidence parámetro, el ensamblado se carga con la evidencia de que el cargador proporciona.

  • Cuando se usa un Load método con un Evidence parámetro, se combinan fragmentos de evidencia. Las pruebas proporcionadas como argumento para el Load método sustituyen a las pruebas proporcionadas por el cargador.

  • Cuando se usa una Load sobrecarga de método con un Byte[] parámetro para cargar una imagen COFF, la evidencia se hereda del ensamblado que realiza la llamada.

  • Cuando se usa un Load método con un Byte[] parámetro y Evidence para cargar una imagen COFF, solo se usa la evidencia proporcionada. Se omiten las pruebas del ensamblado que llama y la evidencia de la imagen COFF.

Si llama al Load método más de una vez en el mismo ensamblado, pero con una evidencia diferente especificada, Common Language Runtime no produce porque FileLoadException no se puede determinar la igualdad e integridad de las distintas especificaciones de evidencia. La evidencia que primero tiene éxito es la evidencia que se usa.

Se aplica a

Load(String, Evidence)

Precaución

This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Carga un ensamblado con su nombre para mostrar y usa la evidencia proporcionada.

public:
 static System::Reflection::Assembly ^ Load(System::String ^ assemblyString, System::Security::Policy::Evidence ^ assemblySecurity);
public static System.Reflection.Assembly Load(string assemblyString, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load(string assemblyString, System.Security.Policy.Evidence assemblySecurity);
static member Load : string * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : string * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (assemblyString As String, assemblySecurity As Evidence) As Assembly

Parámetros

assemblyString
String

Nombre para mostrar del ensamblado.

assemblySecurity
Evidence

Evidencia para cargar el ensamblado.

Devoluciones

Ensamblado cargado.

Atributos

Excepciones

assemblyString es null.

no se encuentra assemblyString.

assemblyString no es un ensamblado válido para el entorno de ejecución cargado actualmente.

No se pudo cargar un archivo que se encontró.

O bien

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

Comentarios

FileLoadException se produce si assemblyString especifica el nombre completo del ensamblado y el primer ensamblado que coincide con el nombre simple tiene una versión, referencia cultural o token de clave pública diferente. El cargador no continúa sondeando para otros ensamblados que coinciden con el nombre simple.

La concesión de permisos específicos para un ensamblado se basa en la evidencia. Las reglas para la combinación de evidencias de ensamblado y seguridad son las siguientes:

  • Cuando se usa un Load método sin Evidence parámetro, el ensamblado se carga con la evidencia de que el cargador proporciona.

  • Cuando se usa un Load método con un Evidence parámetro, se combinan fragmentos de evidencia. Las pruebas proporcionadas como argumento para el Load método sustituyen a las pruebas proporcionadas por el cargador.

  • Cuando se usa una Load sobrecarga de método con un Byte[] parámetro para cargar una imagen de formato de archivo de objeto común (COFF), la evidencia se hereda del ensamblado que realiza la llamada.

  • Cuando se usa un Load método con un Byte[] parámetro y Evidence para cargar una imagen COFF, solo se usa la evidencia proporcionada. Se omiten las pruebas del ensamblado que realiza la llamada y la evidencia de la imagen COFF.

Si llama a este método más de una vez en el mismo ensamblado, pero con una evidencia diferente especificada, Common Language Runtime no produce porque FileLoadException no se puede determinar la igualdad e integridad de las distintas especificaciones de evidencia. La evidencia que primero tiene éxito es la evidencia que se usa.

En .NET Framework versión 2.0, la arquitectura del procesador se agrega a la identidad del ensamblado y se puede especificar como parte de las cadenas de nombre de ensamblado. Por ejemplo, "ProcessorArchitecture=msil". Sin embargo, la manera recomendada de especificar un nombre de ensamblado es crear un AssemblyName objeto y pasarlo a una sobrecarga adecuada del Load método. Consulte AssemblyName.ProcessorArchitecture.

Consulte también

Se aplica a

Load(AssemblyName, Evidence)

Precaución

This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Carga un ensamblado dado su AssemblyName. El ensamblado se carga mediante la evidencia proporcionada.

public:
 static System::Reflection::Assembly ^ Load(System::Reflection::AssemblyName ^ assemblyRef, System::Security::Policy::Evidence ^ assemblySecurity);
public static System.Reflection.Assembly Load(System.Reflection.AssemblyName assemblyRef, System.Security.Policy.Evidence assemblySecurity);
[System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Reflection.Assembly Load(System.Reflection.AssemblyName assemblyRef, System.Security.Policy.Evidence assemblySecurity);
static member Load : System.Reflection.AssemblyName * System.Security.Policy.Evidence -> System.Reflection.Assembly
[<System.Obsolete("This method is obsolete and will be removed in a future release of the .NET Framework. Please use an overload of Load which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member Load : System.Reflection.AssemblyName * System.Security.Policy.Evidence -> System.Reflection.Assembly
Public Shared Function Load (assemblyRef As AssemblyName, assemblySecurity As Evidence) As Assembly

Parámetros

assemblyRef
AssemblyName

Objeto que describe el ensamblado que se va a cargar.

assemblySecurity
Evidence

Evidencia para cargar el ensamblado.

Devoluciones

Ensamblado cargado.

Atributos

Excepciones

assemblyRef es null.

no se encuentra assemblyRef.

assemblyRef no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Un ensamblado o módulo se cargó dos veces con dos evidencias diferentes.

O bien

assemblyRef especifica una ubicación que está deshabilitada en <función de loadFromRemoteSources>.

Comentarios

FileLoadException se produce si assemblyRef especifica el nombre completo del ensamblado y el primer ensamblado que coincide con el nombre simple tiene una versión, referencia cultural o token de clave pública diferente. El cargador no continúa sondeando para otros ensamblados que coinciden con el nombre simple.

Consulte <loadFromRemoteSources> para cargar ensamblados desde ubicaciones remotas.

Nota:

No use un AssemblyName con solo el conjunto de CodeBase propiedades. La CodeBase propiedad no proporciona ningún elemento de la identidad del ensamblado (como el nombre o la versión), por lo que la carga no se produce según las reglas de carga por identidad, como cabría esperar del Load método . En su lugar, el ensamblado se carga mediante reglas de carga desde. Para obtener información sobre las desventajas de usar el contexto de carga desde, consulte la sobrecarga del método o los Assembly.LoadFromprocedimientos recomendados para la carga de ensamblados.

La concesión de permisos específicos para un ensamblado se basa en la evidencia. Las reglas para la combinación de evidencias de ensamblado y seguridad son las siguientes:

  • Cuando se usa un Load método sin Evidence parámetro, el ensamblado se carga con la evidencia de que el cargador proporciona.

  • Cuando se usa un Load método con un Evidence parámetro, se combinan fragmentos de evidencia. Las pruebas proporcionadas como argumento para el Load método sustituyen a las pruebas proporcionadas por el cargador.

  • Cuando se usa una Load sobrecarga de método con un Byte[] parámetro para cargar una imagen de formato de archivo de objeto común (COFF), la evidencia se hereda del ensamblado que realiza la llamada.

  • Cuando se usa un Load método con un Byte[] parámetro y Evidence para cargar una imagen COFF, solo se usa la evidencia proporcionada. Se omiten las pruebas del ensamblado que realiza la llamada y la evidencia de la imagen COFF.

Nota:

Si se establecen tanto la propiedad como la AssemblyName.CodeBase propiedad , el primer intento de cargar el ensamblado usa el nombre para mostrar (incluida la AssemblyName.Name versión, la referencia cultural, etc., como devuelve la Assembly.FullName propiedad ). Si no se encuentra el archivo, CodeBase se usa para buscar el ensamblado. Si se encuentra el ensamblado mediante CodeBase, el nombre para mostrar coincide con el ensamblado. Si se produce un error en la coincidencia, se produce una FileLoadException excepción .

Si llama al Load método más de una vez en el mismo ensamblado, pero con una evidencia diferente especificada, Common Language Runtime no produce porque FileLoadException no se puede determinar la igualdad e integridad de las distintas especificaciones de evidencia. La evidencia que primero tiene éxito es la evidencia que se usa.

Consulte también

Se aplica a

Load(Byte[])

Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")]
public static System.Reflection.Assembly Load(byte[] rawAssembly);
public static System.Reflection.Assembly Load(byte[] rawAssembly);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")>]
static member Load : byte[] -> System.Reflection.Assembly
static member Load : byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte()) As Assembly

Parámetros

rawAssembly
Byte[]

Matriz de bytes que es una imagen basada en COFF que contiene un ensamblado emitido.

Devoluciones

Ensamblado cargado.

Atributos

Excepciones

rawAssembly es null.

rawAssembly no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Comentarios

Esta sobrecarga de método siempre crea un nuevo Assembly objeto en su propio contexto de carga aislado.

Solo .NET Framework: El nivel de confianza de un ensamblado que se carga mediante este método es el mismo que el nivel de confianza del ensamblado que realiza la llamada. Para cargar un ensamblado desde una matriz de bytes con el nivel de confianza del dominio de aplicación, use la sobrecarga del Load(Byte[], Byte[], SecurityContextSource) método . Para obtener más información sobre el uso de evidencia con sobrecargas del Load método que toman matrices de bytes, consulte la sobrecarga del Load(Byte[], Byte[], Evidence) método.

Se aplica a

Load(String)

Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs

Carga un ensamblado con el nombre especificado.

public:
 static System::Reflection::Assembly ^ Load(System::String ^ assemblyString);
public static System.Reflection.Assembly Load(string assemblyString);
static member Load : string -> System.Reflection.Assembly
Public Shared Function Load (assemblyString As String) As Assembly

Parámetros

assemblyString
String

Formato largo o corto del nombre del ensamblado.

Devoluciones

Ensamblado cargado.

Excepciones

assemblyString es null.

assemblyString es una cadena de longitud cero.

no se encuentra assemblyString.

No se pudo cargar un archivo que se encontró.

assemblyString no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Ejemplos

En el ejemplo siguiente se carga un ensamblado según su nombre completo y se enumeran todos los tipos contenidos en el ensamblado especificado. Para obtener información sobre cómo obtener el nombre completo del ensamblado, vea Nombres de ensamblado.

using System;
using System.Reflection;

class Class1
{
    public static void Main()
    {
        // You must supply a valid fully qualified assembly name.
        Assembly SampleAssembly = Assembly.Load
            ("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3");
        // Display all the types contained in the specified assembly.
        foreach (Type oType in SampleAssembly.GetTypes()) {
            Console.WriteLine(oType.Name);
        }
    }
}
Imports System.Reflection

Class Class1
    Public Shared Sub Main()
        ' You must supply a valid fully qualified assembly name.
        Dim SampleAssembly As [Assembly] = _
            [Assembly].Load("SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3")
        Dim oType As Type
        ' Display all the types contained in the specified assembly.
        For Each oType In SampleAssembly.GetTypes()
            Console.WriteLine(oType.Name)
        Next oType
    End Sub	'LoadSample
End Class

Comentarios

En .NET Core/.NET 5+, el ensamblado de destino se cargará en el actual AssemblyLoadContext o en el AssemblyLoadContext.CurrentContextualReflectionContext contexto si se establece. Para más información sobre la carga de ensamblados, consulte Algoritmo de carga de ensamblados administrado.

Para cargar el ensamblado correcto, se recomienda llamar al Load método pasando la forma larga del nombre del ensamblado. La forma larga de un nombre de ensamblado consta de su nombre simple (como "System" para el ensamblado de System.dll) junto con su versión, referencia cultural, token de clave pública y, opcionalmente, su arquitectura de procesador. Corresponde a la propiedad del FullName ensamblado. En el ejemplo siguiente se muestra el uso de un nombre largo para cargar el ensamblado de System.dll para .NET Framework 4:

using System;
using System.Reflection;

public class Example
{
   public static void Main()
   {
      string longName = "system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
      Assembly assem = Assembly.Load(longName);
      if (assem == null)
         Console.WriteLine("Unable to load assembly...");
      else
         Console.WriteLine(assem.FullName);
   }
}
// The example displays the following output:
//        system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Imports System.Reflection

Module Example
   Public Sub Main()
      Dim longName As String = "system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
      Dim assem As Assembly = Assembly.Load(longName)
      If assem Is Nothing Then
         Console.WriteLine("Unable to load assembly...")
      Else
         Console.WriteLine(assem.FullName)
      End If
   End Sub
End Module
' The example displays the following output:
'       system, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089

FileLoadException se produce si assemblyString especifica el nombre completo del ensamblado y el primer ensamblado que coincide con el nombre simple tiene una versión, referencia cultural o token de clave pública diferente. El cargador no continúa sondeando para otros ensamblados que coinciden con el nombre simple.

En .NET Framework versión 2.0, la arquitectura del procesador se agrega a la identidad del ensamblado y se puede especificar como parte de las cadenas de nombre de ensamblado. Por ejemplo, "ProcessorArchitecture=msil". Sin embargo, la manera recomendada de especificar un nombre de ensamblado es crear un AssemblyName objeto y pasarlo a una sobrecarga adecuada del Load método. Consulte AssemblyName.ProcessorArchitecture.

Consulte también

Se aplica a

Load(AssemblyName)

Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs
Source:
Assembly.CoreCLR.cs

Carga un ensamblado dado su AssemblyName.

public:
 static System::Reflection::Assembly ^ Load(System::Reflection::AssemblyName ^ assemblyRef);
public static System.Reflection.Assembly Load(System.Reflection.AssemblyName assemblyRef);
static member Load : System.Reflection.AssemblyName -> System.Reflection.Assembly
Public Shared Function Load (assemblyRef As AssemblyName) As Assembly

Parámetros

assemblyRef
AssemblyName

Objeto que describe el ensamblado que se va a cargar.

Devoluciones

Ensamblado cargado.

Excepciones

assemblyRef es null.

no se encuentra assemblyRef.

No se pudo cargar un archivo que se encontró.

O bien

Solo .NET Framework: assemblyRef especifica una ubicación deshabilitada en <función de loadFromRemoteSources>.

Nota: En .NET para aplicaciones de la Tienda Windows o la biblioteca de clases portable, capture la excepción de clase base, IOException, en su lugar.

assemblyRef no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Ejemplos

En el ejemplo siguiente se crea una instancia de un AssemblyName objeto y se usa para cargar el sysglobal.dll ensamblado. A continuación, en el ejemplo se muestra el nombre completo de los tipos públicos del ensamblado.

using System;
using System.Reflection;

public class Example
{
   public static void Main()
   {
      String fullName = "sysglobl, Version=4.0.0.0, Culture=neutral, " +
                        "PublicKeyToken=b03f5f7f11d50a3a, processor architecture=MSIL";
      var an = new AssemblyName(fullName);
      var assem = Assembly.Load(an);
      Console.WriteLine("Public types in assembly {0}:", assem.FullName);
      foreach (var t in assem.GetTypes())
         if (t.IsPublic)
            Console.WriteLine("   {0}", t.FullName);
   }
}
// The example displays the following output:
//   Public types in assembly sysglobl, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a:
//      System.Globalization.CultureAndRegionInfoBuilder
//      System.Globalization.CultureAndRegionModifiers
Imports System.Reflection

Module Example
   Public Sub Main()
      Dim fullName As String = "sysglobl, Version=4.0.0.0, Culture=neutral, " +
                               "PublicKeyToken=b03f5f7f11d50a3a, processor architecture=MSIL"
      Dim an As New AssemblyName(fullName)
      Dim assem As Assembly = Assembly.Load(an)
      Console.WriteLine("Public types in assembly {0}:", assem.FullName)
      For Each t As Type in assem.GetTypes()
         If t.IsPublic Then Console.WriteLine("   {0}", t.FullName)
      Next
   End Sub
End Module

' The example displays the following output:
'   Public types in assembly sysglobl, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a:
'      System.Globalization.CultureAndRegionInfoBuilder
'      System.Globalization.CultureAndRegionModifiers

Comentarios

En .NET Core/.NET 5+, el ensamblado de destino se cargará en el actual AssemblyLoadContext o en el AssemblyLoadContext.CurrentContextualReflectionContext contexto si se establece. Para más información sobre la carga de ensamblados, consulte Algoritmo de carga de ensamblados administrado.

Nota:

Solo .NET Framework: Para obtener información sobre cómo cargar ensamblados desde ubicaciones remotas, vea <loadFromRemoteSources>.

Nota:

Solo .NET Framework: No use un AssemblyName con solo el conjunto de CodeBase propiedades. La CodeBase propiedad no proporciona ningún elemento de la identidad del ensamblado (como el nombre o la versión), por lo que la carga no se produce según las reglas de carga por identidad, como cabría esperar del Load método . En su lugar, el ensamblado se carga mediante reglas de carga desde. Para obtener información sobre las desventajas de usar el contexto de carga desde, consulte la sobrecarga del método o los Assembly.LoadFromprocedimientos recomendados para la carga de ensamblados.

Nota:

Solo .NET Framework: Si se establecen tanto la propiedad como la AssemblyName.CodeBase propiedad , el primer intento de cargar el ensamblado usa el nombre para mostrar (incluida la AssemblyName.Name versión, la referencia cultural, etc., como devuelve la Assembly.FullName propiedad ). Si no se encuentra el archivo, CodeBase se usa para buscar el ensamblado. Si se encuentra el ensamblado mediante CodeBase, el nombre para mostrar coincide con el ensamblado. Si se produce un error en la coincidencia, se produce una FileLoadException excepción .

Consulte también

Se aplica a

Load(Byte[], Byte[])

Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs
Source:
Assembly.cs

Carga el ensamblado con una imagen basada en formato de archivo de objeto común (COFF) que contiene un ensamblado emitido, que opcionalmente incluye símbolos para el ensamblado.

public:
 static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore);
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")]
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[]? rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[] rawSymbolStore);
public static System.Reflection.Assembly Load(byte[] rawAssembly, byte[]? rawSymbolStore);
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types and members the loaded assembly depends on might be removed")>]
static member Load : byte[] * byte[] -> System.Reflection.Assembly
static member Load : byte[] * byte[] -> System.Reflection.Assembly
Public Shared Function Load (rawAssembly As Byte(), rawSymbolStore As Byte()) As Assembly

Parámetros

rawAssembly
Byte[]

Matriz de bytes que es una imagen basada en COFF que contiene un ensamblado emitido.

rawSymbolStore
Byte[]

Matriz de bytes que contiene los bytes sin procesar que representan los símbolos del ensamblado.

Devoluciones

Ensamblado cargado.

Atributos

Excepciones

rawAssembly es null.

rawAssembly no es un ensamblado válido para el entorno de ejecución cargado actualmente.

Comentarios

En .NET Core/5+, el ensamblado de destino se carga en el objeto actual AssemblyLoadContext. Para más información sobre la carga de ensamblados, consulte Algoritmo de carga de ensamblados administrado.

Esta sobrecarga de método siempre crea un nuevo Assembly objeto en su propio contexto de carga aislado.

Solo .NET Framework: El nivel de confianza de un ensamblado que se carga mediante este método es el mismo que el nivel de confianza del ensamblado que realiza la llamada. Para cargar un ensamblado desde una matriz de bytes con el nivel de confianza del dominio de aplicación, use la sobrecarga del Load(Byte[], Byte[], SecurityContextSource) método . Para obtener más información sobre el uso de evidencia con sobrecargas del Load método que toman matrices de bytes, consulte la sobrecarga del Load(Byte[], Byte[], Evidence) método.

Se aplica a