ICLRDomainManager::SetAppDomainManagerType 方法
指定将用来初始化默认应用程序域的应用程序域管理器的类型(派生自 System.AppDomainManager 类)。
语法
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 处于无法运行托管代码或成功处理调用的状态。 |
备注
目前,dwInitializeDomainFlags
的唯一定义值为 eInitializeNewDomainFlags_NoSecurityChanges
,可告知公共语言运行时 (CLR),应用程序域管理器在执行 AppDomainManager.InitializeNewDomain 方法期间不会修改安全设置。 支持 CLR 对具有条件 AllowPartiallyTrustedCallersAttribute (APTCA) 属性的程序集加载进行优化。 如果此程序集组的传递闭包较大,则可能显著改善启动时间。
重要
如果主机为应用程序域管理器指定 eInitializeNewDomainFlags_NoSecurityChanges
,则如果尝试修改应用程序域的安全性,就会引发 InvalidOperationException。
调用 ICLRControl::SetAppDomainManagerType 方法等同于使用 eInitializeNewDomainFlags_None
调用 ICLRDomainManager::SetAppDomainManagerType
。
要求
平台:请参阅系统要求。
标头:MetaHost.h
库:作为资源包含在 MSCorEE.dll 中
.NET Framework 版本:自 4 起可用