AppDomainManager.InitializeNewDomain(AppDomainSetup) 方法

定义

初始化新应用程序域。

public:
 virtual void InitializeNewDomain(AppDomainSetup ^ appDomainInfo);
public virtual void InitializeNewDomain (AppDomainSetup appDomainInfo);
[System.Security.SecurityCritical]
public virtual void InitializeNewDomain (AppDomainSetup appDomainInfo);
abstract member InitializeNewDomain : AppDomainSetup -> unit
override this.InitializeNewDomain : AppDomainSetup -> unit
[<System.Security.SecurityCritical>]
abstract member InitializeNewDomain : AppDomainSetup -> unit
override this.InitializeNewDomain : AppDomainSetup -> unit
Public Overridable Sub InitializeNewDomain (appDomainInfo As AppDomainSetup)

参数

appDomainInfo
AppDomainSetup

包含应用程序域初始化信息的对象。

属性

示例

以下示例演示自定义应用程序域管理器方法的 InitializeNewDomain 替代。 此代码示例是为类提供的大型示例的 AppDomainManager 一部分。

public override void InitializeNewDomain(AppDomainSetup appDomainInfo)
{
    Console.Write("Initialize new domain called:  ");
    Console.WriteLine(AppDomain.CurrentDomain.FriendlyName);
    InitializationFlags =
        AppDomainManagerInitializationOptions.RegisterWithHost;
}
Public Overrides Sub InitializeNewDomain(ByVal appDomainInfo _
    As AppDomainSetup) 
    Console.Write("Initialize new domain called:  ")
    Console.WriteLine(AppDomain.CurrentDomain.FriendlyName)
    InitializationFlags = _
        AppDomainManagerInitializationOptions.RegisterWithHost   
End Sub

注解

重要

请勿使用此方法初始化 ASP.NET 中的应用程序域。 在 ASP.NET 中,必须由主机处理配置。 如果使用此方法初始化应用程序域,则主机在尝试初始化应用程序域时引发 InvalidOperationException 。 异常消息指示已发生初始化。

此方法在构造函数后立即调用。 默认 InitializeNewDomain 实现不执行任何作用。 自定义实现可以设置内部类和委托、使用非托管主机接口设置接口或为新 AppDomain设置事件处理程序。

此外,对于加载项激活,自定义实现可以将当前 AppDomain 标识为目标应用程序域。

从 .NET Framework 4 开始,可以使用此方法在应用程序启动时对默认应用程序域进行沙盒,或修改新应用程序域的沙盒。 为此,在初始化应用程序域之前,请调整DefaultGrantSet分配给其属性的对象上的属性和FullTrustAssemblies属性ApplicationTrustappDomainInfoAppDomainSetup.ApplicationTrust

备注

只有授予FullTrust的程序集(如全局程序集缓存中的程序集)或在方法中标识fullTrustAssembliesAppDomain.CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[])的程序集才能在构造函数和InitializeNewDomain方法中AppDomainManager加载。

适用于