Assembly.GetExecutingAssembly Metoda

Definice

Získá sestavení, které obsahuje kód, který je právě spuštěn.

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

Návraty

Sestavení, které obsahuje kód, který se právě spouští.

Příklady

Následující příklad používá Type.Assembly vlastnost k získání aktuálně spuštěného sestavení na základě typu obsaženého v tomto sestavení. Volá také metodu GetExecutingAssembly , aby ukázala, že vrací Assembly objekt, který představuje stejné sestavení.

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

Poznámky

Z důvodů výkonu byste tuto metodu měli volat pouze v případě, že v době návrhu nevíte, jaké sestavení se právě spouští. Doporučeným způsobem načtení objektu Assembly , který představuje aktuální sestavení, je použít Type.Assembly vlastnost typu nalezeného v sestavení, jak je znázorněno v následujícím příkladu.

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

Pokud chcete získat sestavení, které obsahuje metodu, která volala aktuálně spouštěný kód, použijte GetCallingAssembly.

Platí pro