AppDomain.GetAssemblies Method

Definition

Gets the assemblies that have been loaded into the execution context of this application domain.

public:
 cli::array <System::Reflection::Assembly ^> ^ GetAssemblies();
public:
 virtual cli::array <System::Reflection::Assembly ^> ^ GetAssemblies();
public System.Reflection.Assembly[] GetAssemblies ();
member this.GetAssemblies : unit -> System.Reflection.Assembly[]
abstract member GetAssemblies : unit -> System.Reflection.Assembly[]
override this.GetAssemblies : unit -> System.Reflection.Assembly[]
Public Function GetAssemblies () As Assembly()

Returns

An array of assemblies in this application domain.

Implements

Exceptions

The operation is attempted on an unloaded application domain.

Examples

The following code example uses the GetAssemblies method to get a list of all assemblies that have been loaded into the application domain. The assemblies are then displayed to the console.

To run this code example, you need to create an assembly named CustomLibrary.dll, or change the assembly name that is passed to the GetAssemblies method.

using namespace System;
using namespace System::Reflection;
using namespace System::Security::Policy;

//for Evidence Object
int main()
{
   AppDomain^ currentDomain = AppDomain::CurrentDomain;
   
   //Provide the current application domain evidence for the assembly.
   Evidence^ asEvidence = currentDomain->Evidence;
   
   //Load the assembly from the application directory using a simple name.
   //Create an assembly called CustomLibrary to run this sample.
   currentDomain->Load( "CustomLibrary", asEvidence );
   
   //Make an array for the list of assemblies.
   array<Assembly^>^assems = currentDomain->GetAssemblies();
   
   //List the assemblies in the current application domain.
   Console::WriteLine( "List of assemblies loaded in current appdomain:" );
   System::Collections::IEnumerator^ myEnum = assems->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Assembly^ assem = safe_cast<Assembly^>(myEnum->Current);
      Console::WriteLine( assem );
   }
}
using System;
using System.Reflection;
using System.Security.Policy;

class ADGetAssemblies
{

    public static void Main()
    {
        AppDomain currentDomain = AppDomain.CurrentDomain;
        //Provide the current application domain evidence for the assembly.
        Evidence asEvidence = currentDomain.Evidence;
        //Load the assembly from the application directory using a simple name.

        //Create an assembly called CustomLibrary to run this sample.
        currentDomain.Load("CustomLibrary",asEvidence);

        //Make an array for the list of assemblies.
        Assembly[] assems = currentDomain.GetAssemblies();
    
        //List the assemblies in the current application domain.
        Console.WriteLine("List of assemblies loaded in current appdomain:");
            foreach (Assembly assem in assems)
                Console.WriteLine(assem.ToString());
    }
}
open System

let currentDomain = AppDomain.CurrentDomain
//Provide the current application domain evidence for the assembly.
let asEvidence = currentDomain.Evidence
//Load the assembly from the application directory using a simple name.

//Create an assembly called CustomLibrary to run this sample.
currentDomain.Load("CustomLibrary", asEvidence)

//Make an array for the list of assemblies.
let assems = currentDomain.GetAssemblies()

//List the assemblies in the current application domain.
printfn "List of assemblies loaded in current appdomain:"
for assem in assems do
    printfn $"{assem}"
Imports System.Reflection
Imports System.Security.Policy

Class ADGetAssemblies
   
   
   Public Shared Sub Main()
      Dim currentDomain As AppDomain = AppDomain.CurrentDomain
      'Provide the current application domain evidence for the assembly.
      Dim asEvidence As Evidence = currentDomain.Evidence
      'Load the assembly from the application directory using a simple name.
     
      'Create an assembly called CustomLibrary to run this sample.
      currentDomain.Load("CustomLibrary", asEvidence)
      
      'Make an array for the list of assemblies.
      Dim assems As [Assembly]() = currentDomain.GetAssemblies()
      
      'List the assemblies in the current application domain.
      Console.WriteLine("List of assemblies loaded in current appdomain:")
      Dim assem As [Assembly]
      For Each assem In  assems
         Console.WriteLine(assem.ToString())
      Next assem
   End Sub
End Class

Applies to