AppDomain.CreateDomain Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Crea un nuovo dominio applicazione.
Overload
CreateDomain(String, Evidence, String, String, Boolean, AppDomainInitializer, String[]) |
Crea un nuovo dominio applicazione con il nome specificato, usando evidenza, percorso di base dell'applicazione, percorso di ricerca relativo e un parametro che specifica se una copia shadow di un assembly deve essere caricata nel dominio dell'applicazione. Specifica un metodo di callback richiamato quando il dominio applicazione viene inizializzato e una matrice di argomenti stringa per passare il metodo di callback. |
CreateDomain(String, Evidence, String, String, Boolean) |
Crea un nuovo dominio applicazione con il nome specificato, usando evidenza, percorso di base dell'applicazione, percorso di ricerca relativo e un parametro che specifica se una copia shadow di un assembly deve essere caricata nel dominio dell'applicazione. |
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) |
Crea un nuovo dominio applicazione usando il nome, l'evidenza, le informazioni di installazione del dominio applicazione, il set di autorizzazioni predefinito e la matrice di assembly completamente attendibili. |
CreateDomain(String, Evidence) |
Crea un nuovo dominio applicazione con il nome specificato usando l'evidenza fornita. |
CreateDomain(String) |
Obsoleti.
Crea un nuovo dominio applicazione con il nome specificato. |
CreateDomain(String, Evidence, AppDomainSetup) |
Crea un nuovo dominio applicazione usando il nome, l'evidenza e le informazioni di configurazione del dominio applicazione specificati. |
CreateDomain(String, Evidence, String, String, Boolean, AppDomainInitializer, String[])
Crea un nuovo dominio applicazione con il nome specificato, usando evidenza, percorso di base dell'applicazione, percorso di ricerca relativo e un parametro che specifica se una copia shadow di un assembly deve essere caricata nel dominio dell'applicazione. Specifica un metodo di callback richiamato quando il dominio applicazione viene inizializzato e una matrice di argomenti stringa per passare il metodo di callback.
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
Parametri
- friendlyName
- String
Nome descrittivo del dominio. Questo nome descrittivo può essere visualizzato nelle interfacce utente per identificare il dominio. Per altre informazioni, vedere FriendlyName.
- securityInfo
- Evidence
Evidenza che stabilisce l'identità del codice eseguito nel dominio applicazione. Passare null
per usare l'evidenza del dominio applicazione corrente.
- appBasePath
- String
Directory di base usata dal sistema di risoluzione dell'assembly per eseguire il probe degli assembly. Per altre informazioni, vedere BaseDirectory.
- appRelativeSearchPath
- String
Percorso relativo alla directory di base in cui il resolver dell'assembly deve eseguire il probe per gli assembly privati. Per altre informazioni, vedere RelativeSearchPath.
- shadowCopyFiles
- Boolean
true
caricare una copia shadow di un assembly nel dominio applicazione.
- adInit
- AppDomainInitializer
Delegato AppDomainInitializer che rappresenta un metodo di callback da richiamare quando viene inizializzato il nuovo oggetto AppDomain.
- adInitArgs
- String[]
Matrice di argomenti stringa da passare al callback rappresentato da adInit
, quando viene inizializzato il nuovo oggetto AppDomain.
Restituisce
Dominio applicazione appena creato.
Eccezioni
friendlyName
è null
.
Commenti
Il metodo rappresentato da adInit
viene eseguito nel contesto del dominio applicazione appena creato.
Se securityInfo
non viene fornito, viene usata l'evidenza del dominio applicazione corrente.
Per altre informazioni sulla copia shadow, vedere ShadowCopyFiles e assembly di copia shadow.
Importante
Non usare questo overload del metodo per creare domini applicazione in modalità sandbox. A partire da .NET Framework 4, l'evidenza fornita per securityInfo
non influisce più sul set di concessioni del dominio applicazione. Usare l'overload del metodo CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) per creare domini applicazione in modalità sandbox.
Si applica a
CreateDomain(String, Evidence, String, String, Boolean)
Crea un nuovo dominio applicazione con il nome specificato, usando evidenza, percorso di base dell'applicazione, percorso di ricerca relativo e un parametro che specifica se una copia shadow di un assembly deve essere caricata nel dominio dell'applicazione.
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
Parametri
- friendlyName
- String
Nome descrittivo del dominio. Questo nome descrittivo può essere visualizzato nelle interfacce utente per identificare il dominio. Per altre informazioni, vedere FriendlyName.
- securityInfo
- Evidence
Evidenza che stabilisce l'identità del codice eseguito nel dominio applicazione. Passare null
per usare l'evidenza del dominio applicazione corrente.
- appBasePath
- String
Directory di base usata dal sistema di risoluzione dell'assembly per eseguire il probe degli assembly. Per altre informazioni, vedere BaseDirectory.
- appRelativeSearchPath
- String
Percorso relativo alla directory di base in cui il resolver dell'assembly deve eseguire il probe per gli assembly privati. Per altre informazioni, vedere RelativeSearchPath.
- shadowCopyFiles
- Boolean
Se true
, viene caricata una copia shadow di un assembly in questo dominio applicazione.
Restituisce
Dominio applicazione appena creato.
Eccezioni
friendlyName
è null
.
Esempio
Nell'esempio seguente viene illustrato, in generale, come creare un dominio usando uno degli overload CreateDomain.
// 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)
Commenti
Se securityInfo
non viene fornito, viene usata l'evidenza del dominio applicazione corrente.
Per altre informazioni sulla copia shadow, vedere ShadowCopyFiles e assembly di copia shadow.
Importante
Non usare questo overload del metodo per creare domini applicazione in modalità sandbox. A partire da .NET Framework 4, l'evidenza fornita per securityInfo
non influisce più sul set di concessioni del dominio applicazione. Usare l'overload del metodo CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) per creare domini applicazione in modalità sandbox.
Si applica a
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[])
Crea un nuovo dominio applicazione usando il nome, l'evidenza, le informazioni di installazione del dominio applicazione, il set di autorizzazioni predefinito e la matrice di assembly completamente attendibili.
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
Parametri
- friendlyName
- String
Nome descrittivo del dominio. Questo nome descrittivo può essere visualizzato nelle interfacce utente per identificare il dominio. Per altre informazioni, vedere la descrizione di FriendlyName.
- securityInfo
- Evidence
Evidenza che stabilisce l'identità del codice eseguito nel dominio applicazione. Passare null
per usare l'evidenza del dominio applicazione corrente.
- info
- AppDomainSetup
Oggetto che contiene informazioni sull'inizializzazione del dominio applicazione.
- grantSet
- PermissionSet
Set di autorizzazioni predefinito concesso a tutti gli assembly caricati nel nuovo dominio applicazione che non dispongono di concessioni specifiche.
- fullTrustAssemblies
- StrongName[]
Matrice di nomi sicuri che rappresentano gli assembly da considerare completamente attendibili nel nuovo dominio applicazione.
Restituisce
Dominio applicazione appena creato.
Eccezioni
friendlyName
è null
.
Il dominio dell'applicazione è null
.
-o-
La proprietà ApplicationBase non è impostata sull'oggetto AppDomainSetup fornito per info
.
Commenti
È necessario impostare la proprietà ApplicationBase dell'oggetto AppDomainSetup fornito per info
. In caso contrario, viene generata un'eccezione.
Se securityInfo
non viene fornito, viene usata l'evidenza del dominio applicazione corrente.
Le informazioni fornite per grantSet
e fullTrustAssemblies
vengono usate per creare un oggetto ApplicationTrust per il nuovo dominio applicazione.
Si applica a
CreateDomain(String, Evidence)
Crea un nuovo dominio applicazione con il nome specificato usando l'evidenza fornita.
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
Parametri
- friendlyName
- String
Nome descrittivo del dominio. Questo nome descrittivo può essere visualizzato nelle interfacce utente per identificare il dominio. Per altre informazioni, vedere FriendlyName.
- securityInfo
- Evidence
Evidenza che stabilisce l'identità del codice eseguito nel dominio applicazione. Passare null
per usare l'evidenza del dominio applicazione corrente.
Restituisce
Dominio applicazione appena creato.
Eccezioni
friendlyName
è null
.
Esempio
Nell'esempio seguente viene illustrato, in generale, come creare un dominio usando uno degli overload CreateDomain.
// 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)
Commenti
Questo overload del metodo usa le informazioni AppDomainSetup dal dominio applicazione predefinito.
Se securityInfo
non viene fornito, viene usata l'evidenza del dominio applicazione corrente.
Importante
Non usare questo overload del metodo per creare domini applicazione in modalità sandbox. A partire da .NET Framework 4, l'evidenza fornita per securityInfo
non influisce più sul set di concessioni del dominio applicazione. Usare l'overload del metodo CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) per creare domini applicazione in modalità sandbox.
Si applica a
CreateDomain(String)
- Origine:
- AppDomain.cs
- Origine:
- AppDomain.cs
- Origine:
- AppDomain.cs
Attenzione
Creating and unloading AppDomains is not supported and throws an exception.
Crea un nuovo dominio applicazione con il nome specificato.
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
Parametri
- friendlyName
- String
Nome descrittivo del dominio.
Restituisce
Dominio applicazione appena creato.
- Attributi
Eccezioni
friendlyName
è null
.
Solo .NET Core e .NET 5+: in tutti i casi.
Esempio
Nell'esempio seguente viene illustrato, in generale, come creare un dominio usando uno degli overload CreateDomain.
// 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)
Commenti
Il parametro friendlyName
è progettato per identificare il dominio in modo significativo per gli esseri umani. Questa stringa deve essere adatta per la visualizzazione nelle interfacce utente.
Questo overload del metodo usa le informazioni AppDomainSetup dal dominio applicazione predefinito.
Vedi anche
Si applica a
CreateDomain(String, Evidence, AppDomainSetup)
Crea un nuovo dominio applicazione usando il nome, l'evidenza e le informazioni di configurazione del dominio applicazione specificati.
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
Parametri
- friendlyName
- String
Nome descrittivo del dominio. Questo nome descrittivo può essere visualizzato nelle interfacce utente per identificare il dominio. Per altre informazioni, vedere FriendlyName.
- securityInfo
- Evidence
Evidenza che stabilisce l'identità del codice eseguito nel dominio applicazione. Passare null
per usare l'evidenza del dominio applicazione corrente.
- info
- AppDomainSetup
Oggetto che contiene informazioni sull'inizializzazione del dominio applicazione.
Restituisce
Dominio applicazione appena creato.
Eccezioni
friendlyName
è null
.
Esempio
Nell'esempio seguente viene illustrato, in generale, come creare un dominio usando uno degli overload CreateDomain.
// 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)
Commenti
Se info
non viene fornito, questo overload del metodo usa le informazioni AppDomainSetup dal dominio applicazione predefinito.
Se securityInfo
non viene fornito, viene usata l'evidenza del dominio applicazione corrente.
Importante
Non usare questo overload del metodo per creare domini applicazione in modalità sandbox. A partire da .NET Framework 4, l'evidenza fornita per securityInfo
non influisce più sul set di concessioni del dominio applicazione. Usare l'overload del metodo CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) per creare domini applicazione in modalità sandbox.