AppDomain.CreateDomain Metod

Definition

Skapar en ny programdomän.

Överlagringar

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

Skapar en ny programdomän med det angivna namnet med hjälp av bevis, programbassökväg, relativ sökväg och en parameter som anger om en skuggkopia av en sammansättning ska läsas in i programdomänen. Anger en motringningsmetod som anropas när programdomänen initieras och en matris med strängargument för att skicka motringningsmetoden.

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

Skapar en ny programdomän med det angivna namnet med hjälp av bevis, programbassökväg, relativ sökväg och en parameter som anger om en skuggkopia av en sammansättning ska läsas in i programdomänen.

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

Skapar en ny programdomän med angivet namn, bevis, konfigurationsinformation för programdomäner, standardbehörighetsuppsättning och matris med fullständigt betrodda sammansättningar.

CreateDomain(String, Evidence)

Skapar en ny programdomän med det angivna namnet med hjälp av de angivna bevisen.

CreateDomain(String)
Föråldrad.

Skapar en ny programdomän med det angivna namnet.

CreateDomain(String, Evidence, AppDomainSetup)

Skapar en ny programdomän med hjälp av angiven information om namn, bevis och programdomänkonfiguration.

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

Skapar en ny programdomän med det angivna namnet med hjälp av bevis, programbassökväg, relativ sökväg och en parameter som anger om en skuggkopia av en sammansättning ska läsas in i programdomänen. Anger en motringningsmetod som anropas när programdomänen initieras och en matris med strängargument för att skicka motringningsmetoden.

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

Parametrar

friendlyName
String

Det egna namnet på domänen. Det här egna namnet kan visas i användargränssnitt för att identifiera domänen. Mer information finns i FriendlyName.

securityInfo
Evidence

Bevis som fastställer identiteten för koden som körs i programdomänen. Skicka null för att använda bevisen för den aktuella programdomänen.

appBasePath
String

Den baskatalog som sammansättningslösaren använder för att avsöka sammansättningar. Mer information finns i BaseDirectory.

appRelativeSearchPath
String

Sökvägen i förhållande till baskatalogen där sammansättningslösaren ska avsöka för privata sammansättningar. Mer information finns i RelativeSearchPath.

shadowCopyFiles
Boolean

true för att läsa in en skuggkopia av en sammansättning till programdomänen.

adInit
AppDomainInitializer

Ett AppDomainInitializer ombud som representerar en motringningsmetod som anropas när det nya AppDomain objektet initieras.

adInitArgs
String[]

En matris med strängargument som ska skickas till återanropet som representeras av adInit, när det nya AppDomain objektet initieras.

Returer

Den nyligen skapade programdomänen.

Undantag

friendlyName är null.

Kommentarer

Metoden som representeras av adInit körs i kontexten för den nyligen skapade programdomänen.

Om securityInfo inte anges används bevisen från den aktuella programdomänen.

Mer information om skuggkopiering ShadowCopyFiles finns i och Skuggkopieringssammansättningar.

Important

Använd inte den här metoden för att skapa sandbox-programdomäner. Från och med .NET Framework 4 påverkar de bevis som tillhandahålls för securityInfo inte längre programdomänens beviljandeuppsättning. Använd metodöverlagringen CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) för att skapa sandbox-programdomäner.

Gäller för

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

Skapar en ny programdomän med det angivna namnet med hjälp av bevis, programbassökväg, relativ sökväg och en parameter som anger om en skuggkopia av en sammansättning ska läsas in i programdomänen.

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

Parametrar

friendlyName
String

Det egna namnet på domänen. Det här egna namnet kan visas i användargränssnitt för att identifiera domänen. Mer information finns i FriendlyName.

securityInfo
Evidence

Bevis som fastställer identiteten för koden som körs i programdomänen. Skicka null för att använda bevisen för den aktuella programdomänen.

appBasePath
String

Den baskatalog som sammansättningslösaren använder för att avsöka sammansättningar. Mer information finns i BaseDirectory.

appRelativeSearchPath
String

Sökvägen i förhållande till baskatalogen där sammansättningslösaren ska avsöka för privata sammansättningar. Mer information finns i RelativeSearchPath.

shadowCopyFiles
Boolean

Om trueläses en skuggkopia av en sammansättning in i den här programdomänen.

Returer

Den nyligen skapade programdomänen.

Undantag

friendlyName är null.

Exempel

Följande exempel visar i allmänhet hur du skapar en domän med hjälp av en av överlagringarna 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)

Kommentarer

Om securityInfo inte anges används bevisen från den aktuella programdomänen.

Mer information om skuggkopiering ShadowCopyFiles finns i och Skuggkopieringssammansättningar.

Important

Använd inte den här metoden för att skapa sandbox-programdomäner. Från och med .NET Framework 4 påverkar de bevis som tillhandahålls för securityInfo inte längre programdomänens beviljandeuppsättning. Använd metodöverlagringen CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) för att skapa sandbox-programdomäner.

Gäller för

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

Skapar en ny programdomän med angivet namn, bevis, konfigurationsinformation för programdomäner, standardbehörighetsuppsättning och matris med fullständigt betrodda sammansättningar.

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

Parametrar

friendlyName
String

Det egna namnet på domänen. Det här egna namnet kan visas i användargränssnitt för att identifiera domänen. Mer information finns i beskrivningen av FriendlyName.

securityInfo
Evidence

Bevis som fastställer identiteten för koden som körs i programdomänen. Skicka null för att använda bevisen för den aktuella programdomänen.

info
AppDomainSetup

Ett objekt som innehåller information om initiering av programdomäner.

grantSet
PermissionSet

En standardbehörighetsuppsättning som beviljas till alla sammansättningar som läses in i den nya programdomänen som inte har specifika bidrag.

fullTrustAssemblies
StrongName[]

En matris med starka namn som representerar sammansättningar som ska betraktas som fullständigt betrodda i den nya programdomänen.

Returer

Den nyligen skapade programdomänen.

Undantag

friendlyName är null.

Programdomänen är null.

-eller-

Egenskapen ApplicationBase har inte angetts för objektet AppDomainSetup som har angetts för info.

Kommentarer

Du måste ange ApplicationBase egenskapen för det AppDomainSetup objekt som du anger för info. Annars utlöses ett undantag.

Om securityInfo inte anges används bevisen från den aktuella programdomänen.

Informationen som tillhandahålls för grantSet och fullTrustAssemblies används för att skapa ett ApplicationTrust objekt för den nya programdomänen.

Gäller för

CreateDomain(String, Evidence)

Skapar en ny programdomän med det angivna namnet med hjälp av de angivna bevisen.

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

Parametrar

friendlyName
String

Det egna namnet på domänen. Det här egna namnet kan visas i användargränssnitt för att identifiera domänen. Mer information finns i FriendlyName.

securityInfo
Evidence

Bevis som fastställer identiteten för koden som körs i programdomänen. Skicka null för att använda bevisen för den aktuella programdomänen.

Returer

Den nyligen skapade programdomänen.

Undantag

friendlyName är null.

Exempel

Följande exempel visar i allmänhet hur du skapar en domän med hjälp av en av överlagringarna 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)

Kommentarer

Den här metoden överbelastar använder AppDomainSetup informationen från standardprogramdomänen.

Om securityInfo inte anges används bevisen från den aktuella programdomänen.

Important

Använd inte den här metoden för att skapa sandbox-programdomäner. Från och med .NET Framework 4 påverkar de bevis som tillhandahålls för securityInfo inte längre programdomänens beviljandeuppsättning. Använd metodöverlagringen CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) för att skapa sandbox-programdomäner.

Gäller för

CreateDomain(String)

Källa:
AppDomain.cs
Källa:
AppDomain.cs
Källa:
AppDomain.cs
Källa:
AppDomain.cs
Källa:
AppDomain.cs

Varning

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

Skapar en ny programdomän med det angivna namnet.

public:
 static AppDomain ^ CreateDomain(System::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);
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}")>]
static member CreateDomain : string -> AppDomain
static member CreateDomain : string -> AppDomain
Public Shared Function CreateDomain (friendlyName As String) As AppDomain

Parametrar

friendlyName
String

Det egna namnet på domänen.

Returer

Den nyligen skapade programdomänen.

Attribut

Undantag

friendlyName är null.

.NET Core och .NET endast 5+ : I samtliga fall.

Exempel

Följande exempel visar i allmänhet hur du skapar en domän med hjälp av en av överlagringarna 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)

Kommentarer

Parametern friendlyName är avsedd att identifiera domänen på ett sätt som är meningsfullt för människor. Den här strängen bör vara lämplig för visning i användargränssnitt.

Den här metoden överbelastar använder AppDomainSetup informationen från standardprogramdomänen.

Se även

Gäller för

CreateDomain(String, Evidence, AppDomainSetup)

Skapar en ny programdomän med hjälp av angiven information om namn, bevis och programdomänkonfiguration.

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

Parametrar

friendlyName
String

Det egna namnet på domänen. Det här egna namnet kan visas i användargränssnitt för att identifiera domänen. Mer information finns i FriendlyName.

securityInfo
Evidence

Bevis som fastställer identiteten för koden som körs i programdomänen. Skicka null för att använda bevisen för den aktuella programdomänen.

info
AppDomainSetup

Ett objekt som innehåller information om initiering av programdomäner.

Returer

Den nyligen skapade programdomänen.

Undantag

friendlyName är null.

Exempel

Följande exempel visar i allmänhet hur du skapar en domän med hjälp av en av överlagringarna 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)

Kommentarer

Om info inte anges använder den här metoden överlagring informationen AppDomainSetup från standardprogramdomänen.

Om securityInfo inte anges används bevisen från den aktuella programdomänen.

Important

Använd inte den här metoden för att skapa sandbox-programdomäner. Från och med .NET Framework 4 påverkar de bevis som tillhandahålls för securityInfo inte längre programdomänens beviljandeuppsättning. Använd metodöverlagringen CreateDomain(String, Evidence, AppDomainSetup, PermissionSet, StrongName[]) för att skapa sandbox-programdomäner.

Gäller för