Assembly.Load Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Carga un ensamblado.
Sobrecargas
Load(Byte[], Byte[], SecurityContextSource) |
Carga el ensamblado con una imagen que toma como base el formato Common Object File Format (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente los símbolos y especificando el origen del contexto de seguridad. |
Load(Byte[], Byte[], Evidence) |
Obsoletos.
Carga el ensamblado con una imagen que toma como base el formato Common Object File Format (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente los símbolos y la evidencia del ensamblado. |
Load(String, Evidence) |
Obsoletos.
Carga un ensamblado según su nombre para mostrar y utilizando 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 que toma como base el formato Common Object File Format (COFF) y 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 que toma como base el formato Common Object File Format (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente los símbolos del ensamblado. |
Load(Byte[], Byte[], SecurityContextSource)
Carga el ensamblado con una imagen que toma como base el formato Common Object File Format (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente los símbolos y especificando el origen del 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 formato 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 tiempo 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 llamador 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 que toma como base el formato Common Object File Format (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente los símbolos y la evidencia del 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 formato 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 tiempo de ejecución cargado actualmente.
Se cargó un ensamblado o módulo dos veces con dos evidencias diferentes.
securityEvidence
no es null
. 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. También se cargan los bytes sin procesar que representan los símbolos del ensamblado.
La concesión de permisos específicos para un ensamblado se basa en la evidencia. Las reglas para la combinación de evidencias de seguridad y ensamblado 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 método con un LoadEvidence 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 inicia porque FileLoadException no se puede determinar la igualdad y la integridad de las distintas especificaciones de evidencia. La evidencia que primero se realiza correctamente 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 según su nombre para mostrar y utilizando 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 ha encontrado assemblyString
.
assemblyString
no es un ensamblado válido para el tiempo de ejecución cargado actualmente.
No se pudo cargar un archivo que se encontró.
o bien
Se cargó un ensamblado o módulo 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 otros ensamblados que coincidan 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 seguridad y ensamblado 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 método con un LoadEvidence 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 omite la evidencia del ensamblado que realiza la llamada y de 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 inicia porque FileLoadException no se puede determinar la igualdad y la integridad de las distintas especificaciones de evidencia. La evidencia que primero se realiza correctamente 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. Vea 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 va a cargarse.
- assemblySecurity
- Evidence
Evidencia para cargar el ensamblado.
Devoluciones
Ensamblado cargado.
- Atributos
Excepciones
assemblyRef
es null
.
No se ha encontrado assemblyRef
.
assemblyRef
no es un ensamblado válido para el tiempo de ejecución cargado actualmente.
Se cargó un ensamblado o módulo dos veces con dos evidencias diferentes.
o bien
assemblyRef
especifica una ubicación 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 otros ensamblados que coincidan 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 de origen. Para obtener información sobre las desventajas de usar el contexto load-from, consulte la Assembly.LoadFrom sobrecarga del método o los procedimientos 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 seguridad y ensamblado 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 método con un LoadEvidence 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 omite la evidencia del ensamblado que realiza la llamada y de la evidencia de la imagen COFF.
Nota
Si se establecen tanto la AssemblyName.Name propiedad como la AssemblyName.CodeBase propiedad , el primer intento de cargar el ensamblado usa el nombre para mostrar (incluida la versión, la referencia cultural, etc.), tal y como devuelve la Assembly.FullName propiedad ). Si no se encuentra el archivo, CodeBase se usa para buscar el ensamblado. Si el ensamblado se encuentra utilizando CodeBase, el nombre para mostrar se compara 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 inicia porque FileLoadException no se puede determinar la igualdad y la integridad de las distintas especificaciones de evidencia. La evidencia que primero se realiza correctamente es la evidencia que se usa.
Consulte también
Se aplica a
Load(Byte[])
- Source:
- Assembly.cs
- Source:
- Assembly.cs
- Source:
- Assembly.cs
Carga el ensamblado con una imagen que toma como base el formato Common Object File Format (COFF) y que contiene un ensamblado emitido.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly);
public static System.Reflection.Assembly Load (byte[] rawAssembly);
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.
Excepciones
rawAssembly
es null
.
rawAssembly
no es un ensamblado válido para el tiempo 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 evidencias 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
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
Forma larga o corta del nombre del ensamblado.
Devoluciones
Ensamblado cargado.
Excepciones
assemblyString
es null
.
assemblyString
es cadena de longitud cero.
No se ha encontrado assemblyString
.
No se pudo cargar un archivo que se encontró.
assemblyString
no es un ensamblado válido para el tiempo 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 namespace System;
using namespace System::Collections;
using namespace System::Reflection;
int main()
{
// You must supply a valid fully qualified assembly name.
Assembly^ SampleAssembly = Assembly::Load
( "SampleAssembly, Version=1.0.2004.0, Culture=neutral, PublicKeyToken=8744b20f8da049e3" );
array<Type^>^ Types = SampleAssembly->GetTypes();
// Display all the types contained in the specified assembly.
IEnumerator^ myEnum = Types->GetEnumerator();
Type^ oType;
while ( myEnum->MoveNext() )
{
oType = safe_cast<Type^>(myEnum->Current);
Console::WriteLine( oType->Name );
}
}
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
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 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 otros ensamblados que coincidan 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. Vea AssemblyName.ProcessorArchitecture.
Consulte también
Se aplica a
Load(AssemblyName)
- 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 va a cargarse.
Devoluciones
Ensamblado cargado.
Excepciones
assemblyRef
es null
.
No se ha encontrado 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 tiempo 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
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 otros ensamblados que coincidan con el nombre simple.
Solo .NET Framework: Consulte <loadFromRemoteSources>
para cargar ensamblados desde ubicaciones remotas.
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 de origen. Para obtener información sobre las desventajas de usar el contexto load-from, consulte la Assembly.LoadFrom sobrecarga del método o los procedimientos recomendados para la carga de ensamblados.
Nota
Solo .NET Framework: Si se establecen tanto la AssemblyName.Name propiedad como la AssemblyName.CodeBase propiedad , el primer intento de cargar el ensamblado usa el nombre para mostrar (incluida la versión, la referencia cultural, etc.), tal y como devuelve la Assembly.FullName propiedad ). Si no se encuentra el archivo, CodeBase se usa para buscar el ensamblado. Si el ensamblado se encuentra utilizando CodeBase, el nombre para mostrar se compara 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
Carga el ensamblado con una imagen que toma como base el formato Common Object File Format (COFF) que contiene un ensamblado emitido, incluyendo opcionalmente los símbolos del ensamblado.
public:
static System::Reflection::Assembly ^ Load(cli::array <System::Byte> ^ rawAssembly, cli::array <System::Byte> ^ rawSymbolStore);
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[]? rawSymbolStore);
public static System.Reflection.Assembly Load (byte[] rawAssembly, byte[] rawSymbolStore);
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 formato que representan los símbolos del ensamblado.
Devoluciones
Ensamblado cargado.
Excepciones
rawAssembly
es null
.
rawAssembly
no es un ensamblado válido para el tiempo 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 evidencias con sobrecargas del Load método que toman matrices de bytes, consulte la sobrecarga del Load(Byte[], Byte[], Evidence) método.