Partager via


AppDomain.CreateDomain Méthode

Définition

Crée un nouveau domaine d'application.

Surcharges

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

Crée un domaine d'application portant le nom donné, à l'aide de la preuve, du chemin d'accès de base de l'application, du chemin de recherche relatif et d'un paramètre spécifiant si un cliché instantané d'un assembly doit être chargé dans le domaine d'application. Spécifie une méthode de rappel qui est appelée quand le domaine d'application est initialisé, et un tableau d'arguments de type chaîne à passer à la méthode de rappel.

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

Crée un domaine d'application portant le nom donné, à l'aide de la preuve, du chemin d'accès de base de l'application, du chemin de recherche relatif et d'un paramètre spécifiant si un cliché instantané d'un assembly doit être chargé dans le domaine d'application.

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

Crée un domaine d'application à l'aide du nom, de la preuve, des informations de configuration du domaine d'application, du jeu d'autorisations par défaut et du tableau d'assemblys ayant un niveau de confiance suffisant.

CreateDomain(String, Evidence)

Crée un domaine d'application portant le nom spécifié à l'aide de la preuve fournie.

CreateDomain(String)
Obsolète.

Crée un domaine d'application portant le nom spécifié.

CreateDomain(String, Evidence, AppDomainSetup)

Crée un domaine d'application à l'aide du nom, de la preuve et des informations de configuration du domaine d'application spécifiés.

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

Crée un domaine d'application portant le nom donné, à l'aide de la preuve, du chemin d'accès de base de l'application, du chemin de recherche relatif et d'un paramètre spécifiant si un cliché instantané d'un assembly doit être chargé dans le domaine d'application. Spécifie une méthode de rappel qui est appelée quand le domaine d'application est initialisé, et un tableau d'arguments de type chaîne à passer à la méthode de rappel.

public:
 static AppDomain ^ CreateDomain(System::String ^ friendlyName, System::Security::Policy::Evidence ^ securityInfo, System::String ^ appBasePath, System::String ^ appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer ^ adInit, cli::array <System::String ^> ^ adInitArgs);
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles, AppDomainInitializer adInit, string[] adInitArgs);
static member CreateDomain : string * System.Security.Policy.Evidence * string * string * bool * AppDomainInitializer * string[] -> AppDomain
Public Shared Function CreateDomain (friendlyName As String, securityInfo As Evidence, appBasePath As String, appRelativeSearchPath As String, shadowCopyFiles As Boolean, adInit As AppDomainInitializer, adInitArgs As String()) As AppDomain

Paramètres

friendlyName
String

Nom convivial du domaine. Ce nom convivial peut être affiché dans les interfaces utilisateur pour identifier le domaine. Pour plus d'informations, consultez FriendlyName.

securityInfo
Evidence

Preuve qui établit l'identité du code exécuté dans le domaine d'application. Passez null pour utiliser la preuve du domaine d'application actuel.

appBasePath
String

Répertoire de base utilisé par le programme de résolution d'assembly pour détecter les assemblys. Pour plus d'informations, consultez BaseDirectory.

appRelativeSearchPath
String

Chemin d'accès par rapport au répertoire de base où le programme de résolution d'assembly doit détecter les assemblys privés. Pour plus d'informations, consultez RelativeSearchPath.

shadowCopyFiles
Boolean

true pour charger un cliché instantané d'un assembly dans le domaine d'application.

adInit
AppDomainInitializer

Un délégué AppDomainInitializer qui représente une méthode de rappel à appeler quand le nouvel objet AppDomain est initialisé.

adInitArgs
String[]

Un tableau d'arguments de type chaîne à passer au rappel représenté par adInit, quand le nouvel objet AppDomain est initialisé.

Retours

AppDomain

Domaine d'application nouvellement créé.

Exceptions

friendlyName a la valeur null.

Remarques

La méthode représentée par adInit est exécutée dans le contexte du domaine d’application nouvellement créé.

S’il securityInfo n’est pas fourni, la preuve du domaine d’application actuel est utilisée.

Pour plus d’informations sur le cliché instantané, consultez ShadowCopyFiles et les assemblys de cliché instantané.

Important

N’utilisez pas cette surcharge de méthode pour créer des domaines d’application en bac à sable. À compter du .NET Framework 4, la preuve fournie pour securityInfo ne plus affecter le jeu d’octroi du domaine d’application. Utilisez la surcharge de CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) méthode pour créer des domaines d’application en bac à sable (sandbox).

S’applique à

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

Crée un domaine d'application portant le nom donné, à l'aide de la preuve, du chemin d'accès de base de l'application, du chemin de recherche relatif et d'un paramètre spécifiant si un cliché instantané d'un assembly doit être chargé dans le domaine d'application.

public:
 static AppDomain ^ CreateDomain(System::String ^ friendlyName, System::Security::Policy::Evidence ^ securityInfo, System::String ^ appBasePath, System::String ^ appRelativeSearchPath, bool shadowCopyFiles);
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, string appBasePath, string appRelativeSearchPath, bool shadowCopyFiles);
static member CreateDomain : string * System.Security.Policy.Evidence * string * string * bool -> AppDomain
Public Shared Function CreateDomain (friendlyName As String, securityInfo As Evidence, appBasePath As String, appRelativeSearchPath As String, shadowCopyFiles As Boolean) As AppDomain

Paramètres

friendlyName
String

Nom convivial du domaine. Ce nom convivial peut être affiché dans les interfaces utilisateur pour identifier le domaine. Pour plus d'informations, consultez FriendlyName.

securityInfo
Evidence

Preuve qui établit l'identité du code exécuté dans le domaine d'application. Passez null pour utiliser la preuve du domaine d'application actuel.

appBasePath
String

Répertoire de base utilisé par le programme de résolution d'assembly pour détecter les assemblys. Pour plus d'informations, consultez BaseDirectory.

appRelativeSearchPath
String

Chemin d'accès par rapport au répertoire de base où le programme de résolution d'assembly doit détecter les assemblys privés. Pour plus d'informations, consultez RelativeSearchPath.

shadowCopyFiles
Boolean

Si la valeur est true, un cliché instantané d'un assembly est chargé dans ce domaine d'application.

Retours

AppDomain

Domaine d'application nouvellement créé.

Exceptions

friendlyName a la valeur null.

Exemples

L’exemple suivant montre, en général, comment créer un domaine à l’aide de l’une CreateDomain des surcharges.

// Set up the AppDomainSetup
AppDomainSetup^ setup = gcnew AppDomainSetup;
setup->ApplicationBase = "(some directory)";
setup->ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence^ baseEvidence = AppDomain::CurrentDomain->Evidence;
Evidence^ evidence = gcnew Evidence( baseEvidence );
evidence->AddAssembly( "(some assembly)" );
evidence->AddHost( "(some host)" );

// Create the AppDomain
AppDomain^ newDomain = AppDomain::CreateDomain( "newDomain", evidence, setup );
// 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);
open System
open System.Security.Policy

// Set up the AppDomainSetup
let setup = AppDomainSetup()
setup.ApplicationBase <- "(some directory)"
setup.ConfigurationFile <- "(some file)"

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

// Create the AppDomain
let newDomain = AppDomain.CreateDomain("newDomain", evidence, setup)
' Set up the AppDomainSetup
Dim setup As New AppDomainSetup()
setup.ApplicationBase = "(some directory)"
setup.ConfigurationFile = "(some file)"

' Set up the Evidence
Dim baseEvidence As Evidence = AppDomain.CurrentDomain.Evidence
Dim evidence As New Evidence(baseEvidence)
evidence.AddAssembly("(some assembly)")
evidence.AddHost("(some host)")

' Create the AppDomain
Dim newDomain As AppDomain = AppDomain.CreateDomain("newDomain", evidence, setup)

Remarques

S’il securityInfo n’est pas fourni, la preuve du domaine d’application actuel est utilisée.

Pour plus d’informations sur le cliché instantané, consultez ShadowCopyFiles et les assemblys de cliché instantané.

Important

N’utilisez pas cette surcharge de méthode pour créer des domaines d’application en bac à sable. À compter du .NET Framework 4, la preuve fournie pour securityInfo ne plus affecter le jeu d’octroi du domaine d’application. Utilisez la surcharge de CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) méthode pour créer des domaines d’application en bac à sable (sandbox).

S’applique à

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

Crée un domaine d'application à l'aide du nom, de la preuve, des informations de configuration du domaine d'application, du jeu d'autorisations par défaut et du tableau d'assemblys ayant un niveau de confiance suffisant.

public:
 static AppDomain ^ CreateDomain(System::String ^ friendlyName, System::Security::Policy::Evidence ^ securityInfo, AppDomainSetup ^ info, System::Security::PermissionSet ^ grantSet, ... cli::array <System::Security::Policy::StrongName ^> ^ fullTrustAssemblies);
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, AppDomainSetup info, System.Security.PermissionSet grantSet, params System.Security.Policy.StrongName[] fullTrustAssemblies);
static member CreateDomain : string * System.Security.Policy.Evidence * AppDomainSetup * System.Security.PermissionSet * System.Security.Policy.StrongName[] -> AppDomain
Public Shared Function CreateDomain (friendlyName As String, securityInfo As Evidence, info As AppDomainSetup, grantSet As PermissionSet, ParamArray fullTrustAssemblies As StrongName()) As AppDomain

Paramètres

friendlyName
String

Nom convivial du domaine. Ce nom convivial peut être affiché dans les interfaces utilisateur pour identifier le domaine. Pour plus d'informations, voir la description de FriendlyName.

securityInfo
Evidence

Preuve qui établit l'identité du code exécuté dans le domaine d'application. Passez null pour utiliser la preuve du domaine d'application actuel.

info
AppDomainSetup

Objet contenant les informations d'initialisation du domaine d'application.

grantSet
PermissionSet

Jeu d'autorisations par défaut qui est accordé à tous les assemblys chargés dans le nouveau domaine d'application qui n'ont pas d'attributions spécifiques.

fullTrustAssemblies
StrongName[]

Tableau des noms forts représentant les assemblys à considérer comme ayant un niveau de confiance suffisant dans le nouveau domaine d'application.

Retours

AppDomain

Domaine d'application nouvellement créé.

Exceptions

friendlyName a la valeur null.

Le domaine d'application est null.

  • ou -

La propriété ApplicationBase n'est pas définie sur l'objet AppDomainSetup fourni pour info.

Remarques

Vous devez définir la ApplicationBase propriété de l’objet AppDomainSetup que vous fournissez pour info. Sinon, une exception est levée.

S’il securityInfo n’est pas fourni, la preuve du domaine d’application actuel est utilisée.

Les informations fournies pour grantSet et fullTrustAssemblies utilisées pour créer un ApplicationTrust objet pour le nouveau domaine d’application.

S’applique à

CreateDomain(String, Evidence)

Crée un domaine d'application portant le nom spécifié à l'aide de la preuve fournie.

public:
 static AppDomain ^ CreateDomain(System::String ^ friendlyName, System::Security::Policy::Evidence ^ securityInfo);
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo);
static member CreateDomain : string * System.Security.Policy.Evidence -> AppDomain
Public Shared Function CreateDomain (friendlyName As String, securityInfo As Evidence) As AppDomain

Paramètres

friendlyName
String

Nom convivial du domaine. Ce nom convivial peut être affiché dans les interfaces utilisateur pour identifier le domaine. Pour plus d'informations, consultez FriendlyName.

securityInfo
Evidence

Preuve qui établit l'identité du code exécuté dans le domaine d'application. Passez null pour utiliser la preuve du domaine d'application actuel.

Retours

AppDomain

Domaine d'application nouvellement créé.

Exceptions

friendlyName a la valeur null.

Exemples

L’exemple suivant montre, en général, comment créer un domaine à l’aide de l’une CreateDomain des surcharges.

// Set up the AppDomainSetup
AppDomainSetup^ setup = gcnew AppDomainSetup;
setup->ApplicationBase = "(some directory)";
setup->ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence^ baseEvidence = AppDomain::CurrentDomain->Evidence;
Evidence^ evidence = gcnew Evidence( baseEvidence );
evidence->AddAssembly( "(some assembly)" );
evidence->AddHost( "(some host)" );

// Create the AppDomain
AppDomain^ newDomain = AppDomain::CreateDomain( "newDomain", evidence, setup );
// 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);
open System
open System.Security.Policy

// Set up the AppDomainSetup
let setup = AppDomainSetup()
setup.ApplicationBase <- "(some directory)"
setup.ConfigurationFile <- "(some file)"

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

// Create the AppDomain
let newDomain = AppDomain.CreateDomain("newDomain", evidence, setup)
' Set up the AppDomainSetup
Dim setup As New AppDomainSetup()
setup.ApplicationBase = "(some directory)"
setup.ConfigurationFile = "(some file)"

' Set up the Evidence
Dim baseEvidence As Evidence = AppDomain.CurrentDomain.Evidence
Dim evidence As New Evidence(baseEvidence)
evidence.AddAssembly("(some assembly)")
evidence.AddHost("(some host)")

' Create the AppDomain
Dim newDomain As AppDomain = AppDomain.CreateDomain("newDomain", evidence, setup)

Remarques

Cette surcharge de méthode utilise les AppDomainSetup informations du domaine d’application par défaut.

S’il securityInfo n’est pas fourni, la preuve du domaine d’application actuel est utilisée.

Important

N’utilisez pas cette surcharge de méthode pour créer des domaines d’application en bac à sable(sandbox). À compter du .NET Framework 4, la preuve fournie pour securityInfo ne plus affecter l’ensemble d’octroi du domaine d’application. Utilisez la CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) surcharge de méthode pour créer des domaines d’application en bac à sable(sandbox).

S’applique à

CreateDomain(String)

Attention

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

Crée un domaine d'application portant le nom spécifié.

public:
 static AppDomain ^ CreateDomain(System::String ^ friendlyName);
public static AppDomain CreateDomain (string friendlyName);
[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);
static member CreateDomain : string -> AppDomain
[<System.Obsolete("Creating and unloading AppDomains is not supported and throws an exception.", DiagnosticId="SYSLIB0024", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member CreateDomain : string -> AppDomain
Public Shared Function CreateDomain (friendlyName As String) As AppDomain

Paramètres

friendlyName
String

Nom convivial du domaine.

Retours

AppDomain

Domaine d'application nouvellement créé.

Attributs

Exceptions

friendlyName a la valeur null.

.NET Core et .NET 5 (et versions ultérieures) uniquement : Dans tous les cas.

Exemples

L’exemple suivant montre, en général, comment créer un domaine à l’aide de l’une CreateDomain des surcharges.

// Set up the AppDomainSetup
AppDomainSetup^ setup = gcnew AppDomainSetup;
setup->ApplicationBase = "(some directory)";
setup->ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence^ baseEvidence = AppDomain::CurrentDomain->Evidence;
Evidence^ evidence = gcnew Evidence( baseEvidence );
evidence->AddAssembly( "(some assembly)" );
evidence->AddHost( "(some host)" );

// Create the AppDomain
AppDomain^ newDomain = AppDomain::CreateDomain( "newDomain", evidence, setup );
// 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);
open System
open System.Security.Policy

// Set up the AppDomainSetup
let setup = AppDomainSetup()
setup.ApplicationBase <- "(some directory)"
setup.ConfigurationFile <- "(some file)"

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

// Create the AppDomain
let newDomain = AppDomain.CreateDomain("newDomain", evidence, setup)
' Set up the AppDomainSetup
Dim setup As New AppDomainSetup()
setup.ApplicationBase = "(some directory)"
setup.ConfigurationFile = "(some file)"

' Set up the Evidence
Dim baseEvidence As Evidence = AppDomain.CurrentDomain.Evidence
Dim evidence As New Evidence(baseEvidence)
evidence.AddAssembly("(some assembly)")
evidence.AddHost("(some host)")

' Create the AppDomain
Dim newDomain As AppDomain = AppDomain.CreateDomain("newDomain", evidence, setup)

Remarques

Le friendlyName paramètre est destiné à identifier le domaine d’une manière significative pour les humains. Cette chaîne doit être adaptée à l’affichage dans les interfaces utilisateur.

Cette surcharge de méthode utilise les AppDomainSetup informations du domaine d’application par défaut.

Voir aussi

S’applique à

CreateDomain(String, Evidence, AppDomainSetup)

Crée un domaine d'application à l'aide du nom, de la preuve et des informations de configuration du domaine d'application spécifiés.

public:
 static AppDomain ^ CreateDomain(System::String ^ friendlyName, System::Security::Policy::Evidence ^ securityInfo, AppDomainSetup ^ info);
public static AppDomain CreateDomain (string friendlyName, System.Security.Policy.Evidence securityInfo, AppDomainSetup info);
static member CreateDomain : string * System.Security.Policy.Evidence * AppDomainSetup -> AppDomain
Public Shared Function CreateDomain (friendlyName As String, securityInfo As Evidence, info As AppDomainSetup) As AppDomain

Paramètres

friendlyName
String

Nom convivial du domaine. Ce nom convivial peut être affiché dans les interfaces utilisateur pour identifier le domaine. Pour plus d'informations, consultez FriendlyName.

securityInfo
Evidence

Preuve qui établit l'identité du code exécuté dans le domaine d'application. Passez null pour utiliser la preuve du domaine d'application actuel.

info
AppDomainSetup

Objet contenant les informations d'initialisation du domaine d'application.

Retours

AppDomain

Domaine d'application nouvellement créé.

Exceptions

friendlyName a la valeur null.

Exemples

L’exemple suivant montre, en général, comment créer un domaine à l’aide de l’une CreateDomain des surcharges.

// Set up the AppDomainSetup
AppDomainSetup^ setup = gcnew AppDomainSetup;
setup->ApplicationBase = "(some directory)";
setup->ConfigurationFile = "(some file)";

// Set up the Evidence
Evidence^ baseEvidence = AppDomain::CurrentDomain->Evidence;
Evidence^ evidence = gcnew Evidence( baseEvidence );
evidence->AddAssembly( "(some assembly)" );
evidence->AddHost( "(some host)" );

// Create the AppDomain
AppDomain^ newDomain = AppDomain::CreateDomain( "newDomain", evidence, setup );
// 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);
open System
open System.Security.Policy

// Set up the AppDomainSetup
let setup = AppDomainSetup()
setup.ApplicationBase <- "(some directory)"
setup.ConfigurationFile <- "(some file)"

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

// Create the AppDomain
let newDomain = AppDomain.CreateDomain("newDomain", evidence, setup)
' Set up the AppDomainSetup
Dim setup As New AppDomainSetup()
setup.ApplicationBase = "(some directory)"
setup.ConfigurationFile = "(some file)"

' Set up the Evidence
Dim baseEvidence As Evidence = AppDomain.CurrentDomain.Evidence
Dim evidence As New Evidence(baseEvidence)
evidence.AddAssembly("(some assembly)")
evidence.AddHost("(some host)")

' Create the AppDomain
Dim newDomain As AppDomain = AppDomain.CreateDomain("newDomain", evidence, setup)

Remarques

Si info elle n’est pas fournie, cette surcharge de méthode utilise les AppDomainSetup informations du domaine d’application par défaut.

S’il securityInfo n’est pas fourni, la preuve du domaine d’application actuel est utilisée.

Important

N’utilisez pas cette surcharge de méthode pour créer des domaines d’application en bac à sable(sandbox). À compter du .NET Framework 4, la preuve fournie pour securityInfo ne plus affecter l’ensemble d’octroi du domaine d’application. Utilisez la CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) surcharge de méthode pour créer des domaines d’application en bac à sable(sandbox).

S’applique à