Assembly.GetExecutingAssembly Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.