Assembly.GetExecutingAssembly Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient l'assembly qui contient le code en cours d'exécution.
public:
static System::Reflection::Assembly ^ GetExecutingAssembly();
public static System.Reflection.Assembly GetExecutingAssembly ();
static member GetExecutingAssembly : unit -> System.Reflection.Assembly
Public Shared Function GetExecutingAssembly () As Assembly
Retours
Assembly qui contient le code en cours d'exécution.
Exemples
L’exemple suivant utilise la Type.Assembly propriété pour obtenir l’assembly en cours d’exécution en fonction d’un type contenu dans cet assembly. Il appelle également la GetExecutingAssembly méthode pour montrer qu’elle retourne un Assembly objet qui représente le même assembly.
using namespace System;
using namespace System::Reflection;
ref class Example
{};
void main()
{
// Get the assembly from a known type in that assembly.
Type^ t = Example::typeid;
Assembly^ assemFromType = t->Assembly;
Console::WriteLine("Assembly that contains Example:");
Console::WriteLine(" {0}\n", assemFromType->FullName);
// Get the currently executing assembly.
Assembly^ currentAssem = Assembly::GetExecutingAssembly();
Console::WriteLine("Currently executing assembly:");
Console::WriteLine(" {0}\n", currentAssem->FullName);
Console::WriteLine("The two Assembly objects are equal: {0}",
assemFromType->Equals(currentAssem));
}
// The example displays the following output:
// Assembly that contains Example:
// GetExecutingAssembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
//
// Currently executing assembly:
// GetExecutingAssembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
//
// The two Assembly objects are equal: True
using System;
using System.Reflection;
class Example
{
static void Main()
{
// Get the assembly from a known type in that assembly.
Type t = typeof(Example);
Assembly assemFromType = t.Assembly;
Console.WriteLine("Assembly that contains Example:");
Console.WriteLine(" {0}\n", assemFromType.FullName);
// Get the currently executing assembly.
Assembly currentAssem = Assembly.GetExecutingAssembly();
Console.WriteLine("Currently executing assembly:");
Console.WriteLine(" {0}\n", currentAssem.FullName);
Console.WriteLine("The two Assembly objects are equal: {0}",
assemFromType.Equals(currentAssem));
}
}
// The example displays the following output:
// Assembly that contains Example:
// GetExecutingAssembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
//
// Currently executing assembly:
// GetExecutingAssembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
//
// The two Assembly objects are equal: True
Imports System.Reflection
Public Module Example
Public Sub Main()
' Get the assembly from a known type in that assembly.
Dim t As Type = GetType(Example)
Dim assemFromType As Assembly = t.Assembly
Console.WriteLine("Assembly that contains Example:")
Console.WriteLine(" {0}", assemFromType.FullName)
Console.WriteLine()
' Get the currently executing assembly.
Dim currentAssem As Assembly = Assembly.GetExecutingAssembly()
Console.WriteLine("Currently executing assembly:")
Console.WriteLine(" {0}", currentAssem.FullName)
Console.WriteLine()
Console.WriteLine("The two Assembly objects are equal: {0}",
assemFromType.Equals(currentAssem))
End Sub
End Module
' The example displays the following output:
' Assembly that contains Example:
' GetExecutingAssembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
'
' Currently executing assembly:
' GetExecutingAssembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
'
' The two Assembly objects are equal: True
Remarques
Pour des raisons de performances, vous devez appeler cette méthode uniquement lorsque vous ne savez pas au moment de la conception quel assembly est en cours d’exécution. La méthode recommandée pour récupérer un Assembly objet qui représente l’assembly actuel consiste à utiliser la Type.Assembly propriété d’un type trouvé dans l’assembly, comme l’illustre l’exemple suivant.
using System;
using System.Reflection;
public class Example
{
public static void Main()
{
Assembly assem = typeof(Example).Assembly;
Console.WriteLine("Assembly name: {0}", assem.FullName);
}
}
// The example displays output like the following:
// Assembly name: Assembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
Imports System.Reflection
Module Example
Public Sub Main()
Dim assem As Assembly = GetType(Example).Assembly
Console.WriteLine("Assembly name: {0}", assem.FullName)
End Sub
End Module
' The example displays the following output:
' Assembly name: Assembly1, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null
Pour obtenir l’assembly qui contient la méthode qui a appelé le code en cours d’exécution, utilisez GetCallingAssembly.