AppDomain.GetAssemblies AppDomain.GetAssemblies AppDomain.GetAssemblies AppDomain.GetAssemblies Method

定义

获取已加载到此应用程序域的执行上下文中的程序集。Gets the assemblies that have been loaded into the execution context of this application domain.

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

返回

此应用程序域中的程序集的数组。An array of assemblies in this application domain.

实现

异常

在卸载的应用程序域上尝试该操作。The operation is attempted on an unloaded application domain.

示例

下面的代码示例使用GetAssemblies方法以获取已加载到应用程序域的所有程序集的列表。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.

若要运行此代码示例,需要创建名为程序集CustomLibrary.dll,或更改程序集名称传递给GetAssemblies方法。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());
	}
   
}
Imports System
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 'Main 
End Class 'ADGetAssemblies 

适用于