AppDomain.CreateDomain Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří novou doménu aplikace.
Přetížení
CreateDomain(String, Evidence, String, String, Boolean, AppDomainInitializer, String[]) |
Vytvoří novou doménu aplikace se zadaným názvem pomocí důkazů, základní cesty aplikace, relativní cesty hledání a parametru, který určuje, zda má být stínová kopie sestavení načtena do domény aplikace. Určuje metodu zpětného volání, která je vyvolána při inicializaci domény aplikace a pole řetězcových argumentů pro předání metody zpětného volání. |
CreateDomain(String, Evidence, String, String, Boolean) |
Vytvoří novou doménu aplikace se zadaným názvem pomocí důkazů, základní cesty aplikace, relativní cesty hledání a parametru, který určuje, zda má být stínová kopie sestavení načtena do domény aplikace. |
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) |
Vytvoří novou doménu aplikace pomocí zadaného názvu, evidence, informací o nastavení domény aplikace, výchozí sady oprávnění a pole plně důvěryhodných sestavení. |
CreateDomain(String, Evidence) |
Vytvoří novou doménu aplikace s daným názvem pomocí poskytnutého důkazu. |
CreateDomain(String) |
Zastaralé.
Vytvoří novou doménu aplikace se zadaným názvem. |
CreateDomain(String, Evidence, AppDomainSetup) |
Vytvoří novou doménu aplikace s použitím zadaného názvu, důkazu a informací o nastavení domény aplikace. |
CreateDomain(String, Evidence, String, String, Boolean, AppDomainInitializer, String[])
Vytvoří novou doménu aplikace se zadaným názvem pomocí důkazů, základní cesty aplikace, relativní cesty hledání a parametru, který určuje, zda má být stínová kopie sestavení načtena do domény aplikace. Určuje metodu zpětného volání, která je vyvolána při inicializaci domény aplikace a pole řetězcových argumentů pro předání metody zpětného volání.
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
Parametry
- friendlyName
- String
Popisný název domény. Tento popisný název lze zobrazit v uživatelských rozhraní k identifikaci domény. Další informace naleznete v tématu FriendlyName.
- securityInfo
- Evidence
Důkaz o totožnosti kódu spuštěného v doméně aplikace. Předáním null
použijte důkaz o aktuální doméně aplikace.
- appBasePath
- String
Základní adresář, který překladač sestavení používá k sondování sestavení. Další informace naleznete v tématu BaseDirectory.
- appRelativeSearchPath
- String
Cesta vzhledem k základnímu adresáři, kde by překladač sestavení měl testovat privátní sestavení. Další informace naleznete v tématu RelativeSearchPath.
- shadowCopyFiles
- Boolean
true
pro načtení stínové kopie sestavení do domény aplikace.
- adInit
- AppDomainInitializer
Delegát AppDomainInitializer , který představuje metodu zpětného volání vyvolá při inicializaci nového AppDomain objektu.
- adInitArgs
- String[]
Pole řetězcových argumentů, které mají být předány zpětnému volání reprezentované adInit
, při inicializaci nového AppDomain objektu.
Návraty
Nově vytvořená doména aplikace.
Výjimky
friendlyName
je null
.
Poznámky
Metoda reprezentovaná parametrem adInit
se provádí v kontextu nově vytvořené domény aplikace.
Pokud securityInfo
není zadán, použije se důkazy z aktuální domény aplikace.
Další informace o stínovém kopírování naleznete v tématu ShadowCopyFiles a Stínová kopie sestavení.
Důležité
Nepoužívejte přetížení této metody pro vytvoření domény aplikace v izolovaném prostoru. Počínaje rozhraním .NET Framework 4, důkazy, které jsou poskytovány pro securityInfo
již ovlivňuje sadu udělení domény aplikace.
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) Pomocí přetížení metody vytvořte domény aplikace v izolovaném prostoru (sandbox).
Platí pro
CreateDomain(String, Evidence, String, String, Boolean)
Vytvoří novou doménu aplikace se zadaným názvem pomocí důkazů, základní cesty aplikace, relativní cesty hledání a parametru, který určuje, zda má být stínová kopie sestavení načtena do domény aplikace.
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
Parametry
- friendlyName
- String
Popisný název domény. Tento popisný název lze zobrazit v uživatelských rozhraní k identifikaci domény. Další informace naleznete v tématu FriendlyName.
- securityInfo
- Evidence
Důkaz o totožnosti kódu spuštěného v doméně aplikace. Předáním null
použijte důkaz o aktuální doméně aplikace.
- appBasePath
- String
Základní adresář, který překladač sestavení používá k sondování sestavení. Další informace naleznete v tématu BaseDirectory.
- appRelativeSearchPath
- String
Cesta vzhledem k základnímu adresáři, kde by překladač sestavení měl testovat privátní sestavení. Další informace naleznete v tématu RelativeSearchPath.
- shadowCopyFiles
- Boolean
Pokud true
, stínová kopie sestavení je načtena do této domény aplikace.
Návraty
Nově vytvořená doména aplikace.
Výjimky
friendlyName
je null
.
Příklady
Následující ukázka obecně ukazuje, jak vytvořit doménu pomocí jednoho z CreateDomain přetížení.
// 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)
Poznámky
Pokud securityInfo
není zadán, použije se důkazy z aktuální domény aplikace.
Další informace o stínovém kopírování naleznete v tématu ShadowCopyFiles a Stínová kopie sestavení.
Důležité
Nepoužívejte přetížení této metody pro vytvoření domény aplikace v izolovaném prostoru. Počínaje rozhraním .NET Framework 4, důkazy, které jsou poskytovány pro securityInfo
již ovlivňuje sadu udělení domény aplikace.
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) Pomocí přetížení metody vytvořte domény aplikace v izolovaném prostoru (sandbox).
Platí pro
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[])
Vytvoří novou doménu aplikace pomocí zadaného názvu, evidence, informací o nastavení domény aplikace, výchozí sady oprávnění a pole plně důvěryhodných sestavení.
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
Parametry
- friendlyName
- String
Popisný název domény. Tento popisný název lze zobrazit v uživatelských rozhraní k identifikaci domény. Další informace najdete v popisu .FriendlyName
- securityInfo
- Evidence
Důkaz o totožnosti kódu spuštěného v doméně aplikace. Předáním null
použijte důkaz o aktuální doméně aplikace.
- info
- AppDomainSetup
Objekt, který obsahuje informace o inicializaci domény aplikace.
- grantSet
- PermissionSet
Výchozí sada oprávnění, která je udělena všem sestavením načteným do nové domény aplikace, která nemají konkrétní udělení.
- fullTrustAssemblies
- StrongName[]
Pole silných názvů představující sestavení, která mají být považována za plně důvěryhodnou v nové doméně aplikace.
Návraty
Nově vytvořená doména aplikace.
Výjimky
friendlyName
je null
.
Doména aplikace je null
.
-nebo-
Vlastnost ApplicationBase není nastavena u objektu zadaného AppDomainSetup pro info
.
Poznámky
Musíte nastavit ApplicationBase vlastnost objektu AppDomainSetup , který zadáte pro info
. V opačném případě je vyvolána výjimka.
Pokud securityInfo
není zadán, použije se důkazy z aktuální domény aplikace.
Informace zadané pro grantSet
a fullTrustAssemblies
slouží k vytvoření objektu ApplicationTrust pro novou doménu aplikace.
Platí pro
CreateDomain(String, Evidence)
Vytvoří novou doménu aplikace s daným názvem pomocí poskytnutého důkazu.
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
Parametry
- friendlyName
- String
Popisný název domény. Tento popisný název lze zobrazit v uživatelských rozhraní k identifikaci domény. Další informace naleznete v tématu FriendlyName.
- securityInfo
- Evidence
Důkaz o totožnosti kódu spuštěného v doméně aplikace. Předáním null
použijte důkaz o aktuální doméně aplikace.
Návraty
Nově vytvořená doména aplikace.
Výjimky
friendlyName
je null
.
Příklady
Následující ukázka obecně ukazuje, jak vytvořit doménu pomocí jednoho z CreateDomain přetížení.
// 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)
Poznámky
Přetížení této metody používá AppDomainSetup informace z výchozí domény aplikace.
Pokud securityInfo
není zadán, použije se důkazy z aktuální domény aplikace.
Důležité
Nepoužívejte přetížení této metody pro vytvoření domény aplikace v izolovaném prostoru. Počínaje rozhraním .NET Framework 4, důkazy, které jsou poskytovány pro securityInfo
již ovlivňuje sadu udělení domény aplikace.
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) Pomocí přetížení metody vytvořte domény aplikace v izolovaném prostoru (sandbox).
Platí pro
CreateDomain(String)
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
- Zdroj:
- AppDomain.cs
Upozornění
Creating and unloading AppDomains is not supported and throws an exception.
Vytvoří novou doménu aplikace se zadaným názvem.
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
Parametry
- friendlyName
- String
Popisný název domény.
Návraty
Nově vytvořená doména aplikace.
- Atributy
Výjimky
friendlyName
je null
.
Pouze .NET Core a .NET 5+: Ve všech případech.
Příklady
Následující ukázka obecně ukazuje, jak vytvořit doménu pomocí jednoho z CreateDomain přetížení.
// 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)
Poznámky
Parametr friendlyName
je určen k identifikaci domény způsobem, který je smysluplný pro člověka. Tento řetězec by měl být vhodný pro zobrazení v uživatelských rozhraních.
Toto přetížení metody používá AppDomainSetup informace z výchozí domény aplikace.
Viz také
Platí pro
CreateDomain(String, Evidence, AppDomainSetup)
Vytvoří novou doménu aplikace s použitím zadaného názvu, důkazů a informací o nastavení domény aplikace.
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
Parametry
- friendlyName
- String
Popisný název domény. Tento popisný název lze zobrazit v uživatelských rozhraní k identifikaci domény. Další informace naleznete v tématu FriendlyName.
- securityInfo
- Evidence
Důkaz o totožnosti kódu spuštěného v doméně aplikace. Předáním null
použijte důkaz o aktuální doméně aplikace.
- info
- AppDomainSetup
Objekt, který obsahuje informace o inicializaci domény aplikace.
Návraty
Nově vytvořená doména aplikace.
Výjimky
friendlyName
je null
.
Příklady
Následující ukázka obecně ukazuje, jak vytvořit doménu pomocí jednoho z CreateDomain přetížení.
// 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)
Poznámky
Pokud info
není zadán, použije přetížení AppDomainSetup této metody informace z výchozí domény aplikace.
Pokud securityInfo
není zadán, použijí se důkazy z aktuální domény aplikace.
Důležité
Nepoužívejte přetížení této metody pro vytvoření domény aplikace v izolovaném prostoru. Počínaje rozhraním .NET Framework 4 už důkazy zadané pro securityInfo
neovlivňují sadu udělení domény aplikace.
CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) Pomocí přetížení metody vytvořte domény aplikace v izolovaném prostoru (sandbox).