英語で読む

次の方法で共有


AppDomain.CreateDomain メソッド

定義

新しいアプリケーション ドメインを作成します。

オーバーロード

CreateDomain(String, Evidence, String, String, Boolean, AppDomainInitializer, String[])

名前、証拠、アプリケーション ベース パス、相対検索パス、およびアセンブリのシャドウ コピーをアプリケーション ドメインに読み込むかどうかを示すパラメーターを指定して、新しいアプリケーション ドメインを作成します。 アプリケーション ドメインを初期化したときに呼び出されるコールバック メソッドと、そのコールバック メソッドに渡す文字列型引数の配列を指定します。

CreateDomain(String, Evidence, String, String, Boolean)

名前、証拠、アプリケーション ベース パス、相対検索パス、およびアセンブリのシャドウ コピーをアプリケーション ドメインに読み込むかどうかを示すパラメーターを指定して、新しいアプリケーション ドメインを作成します。

CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[])

指定された名前、証拠、アプリケーション ドメインの設定情報、既定のアクセス許可セット、および完全信頼されたアセンブリの配列を使用して、新しいアプリケーション ドメインを作成します。

CreateDomain(String, Evidence)

名前および証拠を指定して新しいアプリケーション ドメインを作成します。

CreateDomain(String)
古い.

名前を指定して新しいアプリケーション ドメインを作成します。

CreateDomain(String, Evidence, AppDomainSetup)

名前、証拠、およびアプリケーション ドメイン設定情報を指定して、新しいアプリケーション ドメインを作成します。

CreateDomain(String, Evidence, String, String, Boolean, AppDomainInitializer, String[])

名前、証拠、アプリケーション ベース パス、相対検索パス、およびアセンブリのシャドウ コピーをアプリケーション ドメインに読み込むかどうかを示すパラメーターを指定して、新しいアプリケーション ドメインを作成します。 アプリケーション ドメインを初期化したときに呼び出されるコールバック メソッドと、そのコールバック メソッドに渡す文字列型引数の配列を指定します。

C#
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs);

パラメーター

friendlyName
String

ドメインの表示名。 この表示名は、ドメインを識別するためにユーザー インターフェイスに表示できます。 詳細については、「FriendlyName」を参照してください。

securityInfo
Evidence

アプリケーション ドメインで実行されるコードの ID を確立する証拠。 現在のアプリケーション ドメインの証拠を使用するには、null を渡します。

appBasePath
String

アセンブリを探すためにアセンブリ リゾルバーが使用するベース ディレクトリ。 詳細については、「BaseDirectory」を参照してください。

appRelativeSearchPath
String

アセンブリ リゾルバーがプライベート アセンブリを調べる場所を示す、ベース ディレクトリを基準とした相対パス。 詳細については、「RelativeSearchPath」を参照してください。

shadowCopyFiles
Boolean

アプリケーション ドメインにアセンブリのシャドウ コピーを読み込む場合は true

adInit
AppDomainInitializer

新しい AppDomain オブジェクトの初期化時に呼び出されるコールバック メソッドを表す AppDomainInitializer デリゲート。

adInitArgs
String[]

新しい AppDomain オブジェクトの初期化時に adInit によって表されるコールバックに渡される文字列型引数の配列。

戻り値

新しく作成されたアプリケーション ドメイン。

例外

friendlyNamenullです。

注釈

によって adInit 表される メソッドは、新しく作成されたアプリケーション ドメインのコンテキストで実行されます。

が指定されていない場合 securityInfo は、現在のアプリケーション ドメインからの証拠が使用されます。

シャドウ コピーの詳細については、「シャドウ コピー アセンブリ」を参照してくださいShadowCopyFiles

重要

このメソッド オーバーロードを使用して、サンドボックス アプリケーション ドメインを作成しないでください。 .NET Framework 4 以降では、 に提供されるsecurityInfo証拠は、アプリケーション ドメインの許可セットに影響を与えなくなりました。 メソッド のオーバーロードを CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) 使用して、サンドボックス アプリケーション ドメインを作成します。

適用対象

.NET Framework 4.8.1 およびその他のバージョン
製品 バージョン
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

CreateDomain(String, Evidence, String, String, Boolean)

名前、証拠、アプリケーション ベース パス、相対検索パス、およびアセンブリのシャドウ コピーをアプリケーション ドメインに読み込むかどうかを示すパラメーターを指定して、新しいアプリケーション ドメインを作成します。

C#
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles);

パラメーター

friendlyName
String

ドメインの表示名。 この表示名は、ドメインを識別するためにユーザー インターフェイスに表示できます。 詳細については、「FriendlyName」を参照してください。

securityInfo
Evidence

アプリケーション ドメインで実行されるコードの ID を確立する証拠。 現在のアプリケーション ドメインの証拠を使用するには、null を渡します。

appBasePath
String

アセンブリを探すためにアセンブリ リゾルバーが使用するベース ディレクトリ。 詳細については、「BaseDirectory」を参照してください。

appRelativeSearchPath
String

アセンブリ リゾルバーがプライベート アセンブリを調べる場所を示す、ベース ディレクトリを基準とした相対パス。 詳細については、「RelativeSearchPath」を参照してください。

shadowCopyFiles
Boolean

true の場合、アセンブリのシャドウ コピーはこのアプリケーション ドメインに読み込まれます。

戻り値

新しく作成されたアプリケーション ドメイン。

例外

friendlyNamenullです。

次の例では、一般に、いずれかのオーバーロードを使用してドメインを作成する方法を CreateDomain 示します。

C#
// Set up the AppDomainSetup
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = "(some directory)";
setup.ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence baseEvidence = AppDomain.CurrentDomain.Evidence;
Evidence evidence = new Evidence(baseEvidence);
evidence.AddAssembly("(some assembly)");
evidence.AddHost("(some host)");

// Create the AppDomain
AppDomain newDomain = AppDomain.CreateDomain("newDomain", evidence, setup);

注釈

が指定されていない場合 securityInfo は、現在のアプリケーション ドメインからの証拠が使用されます。

シャドウ コピーの詳細については、「シャドウ コピー アセンブリ」を参照してくださいShadowCopyFiles

重要

このメソッド オーバーロードを使用して、サンドボックス アプリケーション ドメインを作成しないでください。 .NET Framework 4 以降では、 に提供されるsecurityInfo証拠は、アプリケーション ドメインの許可セットに影響を与えなくなりました。 メソッド のオーバーロードを CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) 使用して、サンドボックス アプリケーション ドメインを作成します。

適用対象

.NET Framework 4.8.1 およびその他のバージョン
製品 バージョン
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[])

指定された名前、証拠、アプリケーション ドメインの設定情報、既定のアクセス許可セット、および完全信頼されたアセンブリの配列を使用して、新しいアプリケーション ドメインを作成します。

C#
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, AppDomainSetup info, System.Security.PermissionSet grantSet, params System.Security.Policy.StrongName[] fullTrustAssemblies);

パラメーター

friendlyName
String

ドメインの表示名。 この表示名は、ドメインを識別するためにユーザー インターフェイスに表示できます。 詳細については、FriendlyName の説明を参照してください。

securityInfo
Evidence

アプリケーション ドメインで実行されるコードの ID を確立する証拠。 現在のアプリケーション ドメインの証拠を使用するには、null を渡します。

info
AppDomainSetup

アプリケーション ドメインの初期化情報を格納しているオブジェクト。

grantSet
PermissionSet

新しいアプリケーション ドメインに読み込まれた、特定のアクセス許可を持たないすべてのアセンブリに付与される既定のアクセス許可セット。

fullTrustAssemblies
StrongName[]

新しいアプリケーション ドメインで、完全に信頼されていると見なされるアセンブリを表す厳密名の配列。

戻り値

新しく作成されたアプリケーション ドメイン。

例外

friendlyNamenullです。

アプリケーション ドメインが null です。

- または -

ApplicationBase プロパティは、info 用に提供される AppDomainSetup オブジェクトでは設定されません。

注釈

に指定する ApplicationBase オブジェクトの AppDomainSetup プロパティを設定する info必要があります。 それ以外の場合は、例外がスローされます。

が指定されていない場合 securityInfo は、現在のアプリケーション ドメインからの証拠が使用されます。

および fullTrustAssemblies に指定grantSetされた情報は、新しいアプリケーション ドメインのApplicationTrustオブジェクトを作成するために使用されます。

適用対象

.NET Framework 4.8.1 およびその他のバージョン
製品 バージョン
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

CreateDomain(String, Evidence)

名前および証拠を指定して新しいアプリケーション ドメインを作成します。

C#
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo);

パラメーター

friendlyName
String

ドメインの表示名。 この表示名は、ドメインを識別するためにユーザー インターフェイスに表示できます。 詳細については、「FriendlyName」を参照してください。

securityInfo
Evidence

アプリケーション ドメインで実行されるコードの ID を確立する証拠。 現在のアプリケーション ドメインの証拠を使用するには、null を渡します。

戻り値

新しく作成されたアプリケーション ドメイン。

例外

friendlyNamenullです。

次の例では、一般に、いずれかのオーバーロードを使用してドメインを作成する方法を CreateDomain 示します。

C#
// Set up the AppDomainSetup
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = "(some directory)";
setup.ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence baseEvidence = AppDomain.CurrentDomain.Evidence;
Evidence evidence = new Evidence(baseEvidence);
evidence.AddAssembly("(some assembly)");
evidence.AddHost("(some host)");

// Create the AppDomain
AppDomain newDomain = AppDomain.CreateDomain("newDomain", evidence, setup);

注釈

このメソッド のオーバーロードでは、既定の AppDomainSetup アプリケーション ドメインの情報が使用されます。

が指定されていない場合 securityInfo は、現在のアプリケーション ドメインからの証拠が使用されます。

重要

このメソッド オーバーロードを使用して、サンドボックス アプリケーション ドメインを作成しないでください。 .NET Framework 4 以降では、 に提供されるsecurityInfo証拠は、アプリケーション ドメインの許可セットに影響を与えなくなりました。 メソッド のオーバーロードを CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) 使用して、サンドボックス アプリケーション ドメインを作成します。

適用対象

.NET Framework 4.8.1 およびその他のバージョン
製品 バージョン
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

CreateDomain(String)

ソース:
AppDomain.cs
ソース:
AppDomain.cs
ソース:
AppDomain.cs

注意事項

Creating and unloading AppDomains is not supported and throws an exception.

名前を指定して新しいアプリケーション ドメインを作成します。

C#
public static AppDomain CreateDomain (string friendlyName);
C#
[System.Obsolete("Creating and unloading AppDomains is not supported and throws an exception.", DiagnosticId="SYSLIB0024", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static AppDomain CreateDomain (string friendlyName);

パラメーター

friendlyName
String

ドメインの表示名。

戻り値

新しく作成されたアプリケーション ドメイン。

属性

例外

friendlyNamenullです。

.NET Core および .NET 5 以降のみ:すべての場合。

次の例では、一般に、いずれかのオーバーロードを使用してドメインを作成する方法を CreateDomain 示します。

C#
// Set up the AppDomainSetup
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = "(some directory)";
setup.ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence baseEvidence = AppDomain.CurrentDomain.Evidence;
Evidence evidence = new Evidence(baseEvidence);
evidence.AddAssembly("(some assembly)");
evidence.AddHost("(some host)");

// Create the AppDomain
AppDomain newDomain = AppDomain.CreateDomain("newDomain", evidence, setup);

注釈

パラメーターは friendlyName 、人間にとって意味のある方法でドメインを識別することを目的としています。 この文字列は、ユーザー インターフェイスでの表示に適している必要があります。

このメソッド のオーバーロードでは、既定の AppDomainSetup アプリケーション ドメインの情報が使用されます。

こちらもご覧ください

適用対象

.NET 9 およびその他のバージョン
製品 バージョン (廃止)
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5 (6, 7, 8, 9)
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

CreateDomain(String, Evidence, AppDomainSetup)

名前、証拠、およびアプリケーション ドメイン設定情報を指定して、新しいアプリケーション ドメインを作成します。

C#
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, AppDomainSetup info);

パラメーター

friendlyName
String

ドメインの表示名。 この表示名は、ドメインを識別するためにユーザー インターフェイスに表示できます。 詳細については、「FriendlyName」を参照してください。

securityInfo
Evidence

アプリケーション ドメインで実行されるコードの ID を確立する証拠。 現在のアプリケーション ドメインの証拠を使用するには、null を渡します。

info
AppDomainSetup

アプリケーション ドメインの初期化情報を格納しているオブジェクト。

戻り値

新しく作成されたアプリケーション ドメイン。

例外

friendlyNamenullです。

次の例では、一般に、いずれかのオーバーロードを使用してドメインを作成する方法を CreateDomain 示します。

C#
// Set up the AppDomainSetup
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = "(some directory)";
setup.ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence baseEvidence = AppDomain.CurrentDomain.Evidence;
Evidence evidence = new Evidence(baseEvidence);
evidence.AddAssembly("(some assembly)");
evidence.AddHost("(some host)");

// Create the AppDomain
AppDomain newDomain = AppDomain.CreateDomain("newDomain", evidence, setup);

注釈

が指定されていない場合 info 、このメソッド のオーバーロードでは、既定の AppDomainSetup アプリケーション ドメインの情報が使用されます。

が指定されていない場合 securityInfo は、現在のアプリケーション ドメインからの証拠が使用されます。

重要

このメソッド オーバーロードを使用して、サンドボックス アプリケーション ドメインを作成しないでください。 .NET Framework 4 以降では、 に提供されるsecurityInfo証拠は、アプリケーション ドメインの許可セットに影響を与えなくなりました。 メソッド のオーバーロードを CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) 使用して、サンドボックス アプリケーション ドメインを作成します。

適用対象

.NET Framework 4.8.1 およびその他のバージョン
製品 バージョン
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1