通过


ICLRDomainManager::SetAppDomainManagerType 方法

指定派生自 System.AppDomainManager 该类的应用程序域管理器的类型,该类型将用于初始化默认应用程序域。

Syntax

HRESULT SetAppDomainManagerType(
    [in] LPCWSTR wszAppDomainManagerAssembly,
    [in] LPCWSTR wszAppDomainManagerType,
    [in] EInitializeNewDomainFlags dwInitializeDomainFlags
);

参数

wszAppDomainManagerAssembly [in]包含应用程序域管理器类型的程序集的显示名称;例如:“AdMgrExample, Version=1.0.0.0, Culture=neutral, PublicKeyToken=6856bccf150f00b3”。

wszAppDomainManagerType [in]应用程序域管理器的类型名称,包括命名空间。

dwInitializeDomainFlags [in] EInitializeNewDomainFlags 枚举值的组合,这些枚举值提供有关应用程序域管理器的信息。

返回值

此方法返回以下特定的 HRESULT 以及指示方法失败的 HRESULT 错误。

HRESULT 说明
S_OK 该方法已成功完成。
HOST_E_CLRNOTAVAILABLE 公共语言运行时(CLR)尚未加载到进程中,或者 CLR 处于无法成功运行托管代码或处理调用的状态。

注解

目前,唯一定义的值为dwInitializeDomainFlagseInitializeNewDomainFlags_NoSecurityChanges,它告知公共语言运行时(CLR)应用程序域管理器在执行方法期间AppDomainManager.InitializeNewDomain不会修改安全设置。 这允许 CLR 优化具有条件 AllowPartiallyTrustedCallersAttribute (APTCA) 属性的程序集的加载。 如果此程序集集的可传递关闭很大,这可能会导致启动时间显著改善。

重要

如果主机为应用程序域管理器指定 eInitializeNewDomainFlags_NoSecurityChangesInvalidOperationException 则会在尝试修改应用程序域的安全性时引发。

调用 ICLRControl::SetAppDomainManagerType方法等效于使用 ICLRDomainManager::SetAppDomainManagerTypeeInitializeNewDomainFlags_None.

要求

平台:请参阅系统要求

页眉: MetaHost.h

图书馆: 作为资源包含在 MSCorEE.dll

.NET Framework 版本: 自 4 起可用

另见