次の方法で共有


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 のみです。この値では、AppDomainManager.InitializeNewDomain メソッドの実行中にアプリケーション ドメイン マネージャーでセキュリティ設定が変更されないことが共通言語ランタイム (CLR) に通知されます。 これにより、CLR で条件付き AllowPartiallyTrustedCallersAttribute (APTCA) 属性を持つアセンブリの読み込みを最適化できます。 このアセンブリ セットの推移閉包が大きい場合は、起動時間が大幅に改善される可能性があります。

重要

ホストでアプリケーション ドメインマネージャーに eInitializeNewDomainFlags_NoSecurityChanges が指定されている場合は、アプリケーション ドメインのセキュリティを変更しようとすると、InvalidOperationException がスローされます。

ICLRControl::SetAppDomainManagerType メソッドを呼び出すことは、eInitializeNewDomainFlags_None を使用して ICLRDomainManager::SetAppDomainManagerType を呼び出すことと同等です。

必要条件

:システム要件」を参照してください。

ヘッダー: MetaHost.h

ライブラリ: MSCorEE.dll にリソースとして含まれます

.NET Framework のバージョン: 4 以降で使用可能

関連項目