Activator.CreateInstance Metoda

Definice

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

Přetížení

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Zastaralé.

Vytvoří instanci typu, jejíž název je zadán v zadané vzdálené doméně, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified in the specified remote domain, using the named assembly and the constructor that best matches the specified parameters.

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Vytvoří instanci typu, jejíž název je zadán v zadané vzdálené doméně, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified in the specified remote domain, using the named assembly and the constructor that best matches the specified parameters.

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified, using the named assembly and the constructor that best matches the specified parameters.

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo)

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

CreateInstance(Type, Object[], Object[])

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

CreateInstance(String, String, Object[])

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného konstruktoru Assembly a bez parametrů.Creates an instance of the type whose name is specified, using the named assembly and parameterless constructor.

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)
Zastaralé.

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified, using the named assembly and the constructor that best matches the specified parameters.

CreateInstance(Type, Object[])

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

CreateInstance(Type, Boolean)

Vytvoří instanci zadaného typu pomocí konstruktoru bez parametrů daného typu.Creates an instance of the specified type using that type's parameterless constructor.

CreateInstance(String, String)

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného konstruktoru Assembly a bez parametrů.Creates an instance of the type whose name is specified, using the named assembly and parameterless constructor.

CreateInstance(ActivationContext, String[])

Vytvoří instanci typu, která je určena zadaným ActivationContext objektem a aktivována se zadanými vlastními aktivačními daty.Creates an instance of the type that is designated by the specified ActivationContext object and activated with the specified custom activation data.

CreateInstance(Type)

Vytvoří instanci zadaného typu pomocí konstruktoru bez parametrů daného typu.Creates an instance of the specified type using that type's parameterless constructor.

CreateInstance(ActivationContext)

Vytvoří instanci typu určenou zadaným ActivationContext objektem.Creates an instance of the type designated by the specified ActivationContext object.

CreateInstance(AppDomain, String, String)

Vytvoří instanci typu, jejíž název je zadán v zadané vzdálené doméně, pomocí pojmenovaného sestavení a konstruktoru bez parametrů.Creates an instance of the type whose name is specified in the specified remote domain, using the named assembly and parameterless constructor.

CreateInstance<T>()

Vytvoří instanci typu určenou zadaným parametrem obecného typu s použitím konstruktoru bez parametrů.Creates an instance of the type designated by the specified generic type parameter, using the parameterless constructor.

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Upozornění

Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Vytvoří instanci typu, jejíž název je zadán v zadané vzdálené doméně, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified in the specified remote domain, using the named assembly and the constructor that best matches the specified parameters.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(AppDomain ^ domain, System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityAttributes);
static member CreateInstance : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
[<System.Security.SecurityCritical>]
static member CreateInstance : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (domain As AppDomain, assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityAttributes As Evidence) As ObjectHandle

Parametry

domain
AppDomain

Doména, ve které je vytvořen typ s názvem typeName .The domain where the type named typeName is created.

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

ignoreCase
Boolean

true Chcete-li určit, že hledání typeName nerozlišuje velká a malá písmena; false Chcete-li určit, že hledání rozlišuje malá a velká písmena.true to specify that the search for typeName is not case-sensitive; false to specify that the search is case-sensitive.

bindingAttr
BindingFlags

Kombinace nuly nebo více bitových příznaků, které mají vliv na hledání typeName konstruktoru.A combination of zero or more bit flags that affect the search for the typeName constructor. Pokud bindingAttr je nula, je prováděno hledání rozlišovat velikost písmen pro veřejné konstruktory.If bindingAttr is zero, a case-sensitive search for public constructors is conducted.

binder
Binder

Objekt, který používá bindingAttr a args k hledání a identifikaci typeName konstruktoru.An object that uses bindingAttr and args to seek and identify the typeName constructor. Pokud binder je null , použije se výchozí pořadač.If binder is null, the default binder is used.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

culture
CultureInfo

Informace specifické pro jazykovou verzi, které řídí převod args na formální typy deklarované pro typeName konstruktor.Culture-specific information that governs the coercion of args to the formal types declared for the typeName constructor. Pokud culture je null , CultureInfo použije se pro aktuální vlákno.If culture is null, the CultureInfo for the current thread is used.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt.This is typically an array that contains a single UrlAttribute object. UrlAttributeUrčuje adresu URL, která je požadována k aktivaci vzdáleného objektu.The UrlAttribute specifies the URL that is required to activate a remote object.

securityAttributes
Evidence

Informace, které slouží k rozhodování o zásadách zabezpečení a udělení oprávnění pro kód.Information used to make security policy decisions and grant code permissions.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Atributy

Výjimky

domain nebo typeName je null .domain or typeName is null.

Nebyl nalezen žádný odpovídající konstruktor.No matching constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Konstruktor, který byl vyvolán prostřednictvím reflexe, vyvolal výjimku.The constructor, which was invoked through reflection, threw an exception.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Poznámky

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Použijte CreateInstance v případě, že hostitel potřebuje spustit kód v doméně aplikace, která má omezená oprávnění zabezpečení.Use CreateInstance when a host needs to execute code in an application domain that has restricted security permissions.

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

Poznámka

Tato metoda používá SecurityAction.LinkDemand k vyžadování plného vztahu důvěryhodnosti bezprostředního volajícího.This method uses SecurityAction.LinkDemand to require the immediate caller to have full trust.

Platí pro

CreateInstance(AppDomain, String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Vytvoří instanci typu, jejíž název je zadán v zadané vzdálené doméně, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified in the specified remote domain, using the named assembly and the constructor that best matches the specified parameters.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(AppDomain ^ domain, System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
[<System.Security.SecurityCritical>]
static member CreateInstance : AppDomain * string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (domain As AppDomain, assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle

Parametry

domain
AppDomain

Doména, ve které je vytvořen typ s názvem typeName .The domain where the type named typeName is created.

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

ignoreCase
Boolean

true Chcete-li určit, že hledání typeName nerozlišuje velká a malá písmena; false Chcete-li určit, že hledání rozlišuje malá a velká písmena.true to specify that the search for typeName is not case-sensitive; false to specify that the search is case-sensitive.

bindingAttr
BindingFlags

Kombinace nuly nebo více bitových příznaků, které mají vliv na hledání typeName konstruktoru.A combination of zero or more bit flags that affect the search for the typeName constructor. Pokud bindingAttr je nula, je prováděno hledání rozlišovat velikost písmen pro veřejné konstruktory.If bindingAttr is zero, a case-sensitive search for public constructors is conducted.

binder
Binder

Objekt, který používá bindingAttr a args k hledání a identifikaci typeName konstruktoru.An object that uses bindingAttr and args to seek and identify the typeName constructor. Pokud binder je null , použije se výchozí pořadač.If binder is null, the default binder is used.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

culture
CultureInfo

Informace specifické pro jazykovou verzi, které řídí převod args na formální typy deklarované pro typeName konstruktor.Culture-specific information that governs the coercion of args to the formal types declared for the typeName constructor. Pokud culture je null , CultureInfo použije se pro aktuální vlákno.If culture is null, the CultureInfo for the current thread is used.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt, který určuje adresu URL, která je požadována k aktivaci vzdáleného objektu.This is typically an array that contains a single UrlAttribute object that specifies the URL that is required to activate a remote object.

Tento parametr se vztahuje k objektům aktivovaným klientem.This parameter is related to client-activated objects. Aktivace klientů je starší verze technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nové vývojové prostředí.Client activation is a legacy technology that is retained for backward compatibility but is not recommended for new development. Místo toho by se měly používat distribuované aplikace Windows Communication Foundation.Distributed applications should instead use Windows Communication Foundation.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Atributy

Výjimky

domain nebo typeName je null .domain or typeName is null.

Nebyl nalezen žádný odpovídající konstruktor.No matching constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Konstruktor, který byl vyvolán prostřednictvím reflexe, vyvolal výjimku.The constructor, which was invoked through reflection, threw an exception.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Poznámky

Použijte CreateInstance v případě, že hostitel potřebuje spustit kód v doméně aplikace, která má omezená oprávnění zabezpečení.Use CreateInstance when a host needs to execute code in an application domain that has restricted security permissions.

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

Poznámka

Tato metoda používá SecurityAction.LinkDemand k vyžadování plného vztahu důvěryhodnosti bezprostředního volajícího.This method uses SecurityAction.LinkDemand to require the immediate caller to have full trust.

Platí pro

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[])

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified, using the named assembly and the constructor that best matches the specified parameters.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
public static System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
static member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As ObjectHandle

Parametry

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

ignoreCase
Boolean

true Chcete-li určit, že hledání typeName nerozlišuje velká a malá písmena; false Chcete-li určit, že hledání rozlišuje malá a velká písmena.true to specify that the search for typeName is not case-sensitive; false to specify that the search is case-sensitive.

bindingAttr
BindingFlags

Kombinace nuly nebo více bitových příznaků, které mají vliv na hledání typeName konstruktoru.A combination of zero or more bit flags that affect the search for the typeName constructor. Pokud bindingAttr je nula, je prováděno hledání rozlišovat velikost písmen pro veřejné konstruktory.If bindingAttr is zero, a case-sensitive search for public constructors is conducted.

binder
Binder

Objekt, který používá bindingAttr a args k hledání a identifikaci typeName konstruktoru.An object that uses bindingAttr and args to seek and identify the typeName constructor. Pokud binder je null , použije se výchozí pořadač.If binder is null, the default binder is used.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

culture
CultureInfo

Informace specifické pro jazykovou verzi, které řídí převod args na formální typy deklarované pro typeName konstruktor.Culture-specific information that governs the coercion of args to the formal types declared for the typeName constructor. Pokud culture je null , CultureInfo použije se pro aktuální vlákno.If culture is null, the CultureInfo for the current thread is used.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt, který určuje adresu URL, která je požadována k aktivaci vzdáleného objektu.This is typically an array that contains a single UrlAttribute object that specifies the URL that is required to activate a remote object.

Tento parametr se vztahuje k objektům aktivovaným klientem.This parameter is related to client-activated objects. Aktivace klientů je starší verze technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nové vývojové prostředí.Client activation is a legacy technology that is retained for backward compatibility but is not recommended for new development. Místo toho by se měly používat distribuované aplikace Windows Communication Foundation.Distributed applications should instead use Windows Communication Foundation.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Výjimky

typeName je null.typeName is null.

Nebyl nalezen žádný odpovídající konstruktor.No matching constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Konstruktor, který byl vyvolán prostřednictvím reflexe, vyvolal výjimku.The constructor, which was invoked through reflection, threw an exception.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Poznámky

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít k vytvoření typů a členů NonPublic, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení obsahující typy NonPublic a členy omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to create nonpublic types and members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types and members is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo, Object[])

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

public:
 static System::Object ^ CreateInstance(Type ^ type, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes);
public static object? CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture, object?[]? activationAttributes);
public static object CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes);
static member CreateInstance : Type * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] -> obj
Public Shared Function CreateInstance (type As Type, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object()) As Object

Parametry

type
Type

Typ objektu, který má být vytvořen.The type of object to create.

bindingAttr
BindingFlags

Kombinace nuly nebo více bitových příznaků, které mají vliv na hledání type konstruktoru.A combination of zero or more bit flags that affect the search for the type constructor. Pokud bindingAttr je nula, je prováděno hledání rozlišovat velikost písmen pro veřejné konstruktory.If bindingAttr is zero, a case-sensitive search for public constructors is conducted.

binder
Binder

Objekt, který používá bindingAttr a args k hledání a identifikaci type konstruktoru.An object that uses bindingAttr and args to seek and identify the type constructor. Pokud binder je null , použije se výchozí pořadač.If binder is null, the default binder is used.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

culture
CultureInfo

Informace specifické pro jazykovou verzi, které řídí převod args na formální typy deklarované pro type konstruktor.Culture-specific information that governs the coercion of args to the formal types declared for the type constructor. Pokud culture je null , CultureInfo použije se pro aktuální vlákno.If culture is null, the CultureInfo for the current thread is used.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt, který určuje adresu URL, která je požadována k aktivaci vzdáleného objektu.This is typically an array that contains a single UrlAttribute object that specifies the URL that is required to activate a remote object.

Tento parametr se vztahuje k objektům aktivovaným klientem.This parameter is related to client-activated objects. Aktivace klientů je starší verze technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nové vývojové prostředí.Client activation is a legacy technology that is retained for backward compatibility but is not recommended for new development. Místo toho by se měly používat distribuované aplikace Windows Communication Foundation.Distributed applications should instead use Windows Communication Foundation.

Návraty

Object

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

type je null.type is null.

type není RuntimeType .type is not a RuntimeType.

-nebo--or- type je otevřený obecný typ (to znamená, že se ContainsGenericParameters vrátí vlastnost true ).type is an open generic type (that is, the ContainsGenericParameters property returns true).

type nemůže být TypeBuilder .type cannot be a TypeBuilder.

-nebo--or- Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- Sestavení, které obsahuje, type je dynamické sestavení, které bylo vytvořeno pomocí Save .The assembly that contains type is a dynamic assembly that was created with Save.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

Volaný konstruktor vyvolá výjimku.The constructor being called throws an exception.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Nebyl nalezen žádný odpovídající konstruktor.No matching constructor was found.

type je objekt modelu COM, ale identifikátor třídy použitý k získání tohoto typu je neplatný nebo identifikovaná třída není zaregistrována.type is a COM object but the class identifier used to obtain the type is invalid, or the identified class is not registered.

type není platný typ.type is not a valid type.

Poznámky

Konstruktor, který má být vyvolán, musí poskytnout nejvíce specifickou shodu se zadaným seznamem argumentů v rámci omezení zadaného pořadače a atributů vazby.The constructor to be invoked must provide the most specific match with the specified argument list under the constraints of the specified binder and binding attributes.

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Poznámka

Od .NET Framework 2,0 s aktualizací Service Pack 1 lze tuto metodu použít pro přístup k NonPublic typům a členům, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je udělená sada NonPublic typů a členů omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access nonpublic types and members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the nonpublic types and members is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(Type, BindingFlags, Binder, Object[], CultureInfo)

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

public:
 static System::Object ^ CreateInstance(Type ^ type, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture);
public static object? CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, object?[]? args, System.Globalization.CultureInfo? culture);
public static object CreateInstance (Type type, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture);
static member CreateInstance : Type * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo -> obj
Public Shared Function CreateInstance (type As Type, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo) As Object

Parametry

type
Type

Typ objektu, který má být vytvořen.The type of object to create.

bindingAttr
BindingFlags

Kombinace nuly nebo více bitových příznaků, které mají vliv na hledání type konstruktoru.A combination of zero or more bit flags that affect the search for the type constructor. Pokud bindingAttr je nula, je prováděno hledání rozlišovat velikost písmen pro veřejné konstruktory.If bindingAttr is zero, a case-sensitive search for public constructors is conducted.

binder
Binder

Objekt, který používá bindingAttr a args k hledání a identifikaci type konstruktoru.An object that uses bindingAttr and args to seek and identify the type constructor. Pokud binder je null , použije se výchozí pořadač.If binder is null, the default binder is used.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

culture
CultureInfo

Informace specifické pro jazykovou verzi, které řídí převod args na formální typy deklarované pro type konstruktor.Culture-specific information that governs the coercion of args to the formal types declared for the type constructor. Pokud culture je null , CultureInfo použije se pro aktuální vlákno.If culture is null, the CultureInfo for the current thread is used.

Návraty

Object

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

type je null.type is null.

type není RuntimeType .type is not a RuntimeType.

-nebo--or- type je otevřený obecný typ (to znamená, že se ContainsGenericParameters vrátí vlastnost true ).type is an open generic type (that is, the ContainsGenericParameters property returns true).

type nemůže být TypeBuilder .type cannot be a TypeBuilder.

-nebo--or- Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- Sestavení, které obsahuje, type je dynamické sestavení, které bylo vytvořeno pomocí Save .The assembly that contains type is a dynamic assembly that was created with Save.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

Volaný konstruktor vyvolá výjimku.The constructor being called throws an exception.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Nebyl nalezen žádný odpovídající konstruktor.No matching constructor was found.

type je objekt modelu COM, ale identifikátor třídy použitý k získání tohoto typu je neplatný nebo identifikovaná třída není zaregistrována.type is a COM object but the class identifier used to obtain the type is invalid, or the identified class is not registered.

type není platný typ.type is not a valid type.

Poznámky

Konstruktor, který má být vyvolán, musí poskytnout nejvíce specifickou shodu se zadaným seznamem argumentů v rámci omezení zadaného pořadače a atributů vazby.The constructor to be invoked must provide the most specific match with the specified argument list under the constraints of the specified binder and binding attributes.

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít pro přístup k NonPublic typům a členům, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení, která obsahuje typy NonPublic a členy, omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access nonpublic types and members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types and members is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(Type, Object[], Object[])

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

public:
 static System::Object ^ CreateInstance(Type ^ type, cli::array <System::Object ^> ^ args, cli::array <System::Object ^> ^ activationAttributes);
public static object? CreateInstance (Type type, object?[]? args, object?[]? activationAttributes);
public static object CreateInstance (Type type, object[] args, object[] activationAttributes);
static member CreateInstance : Type * obj[] * obj[] -> obj
Public Shared Function CreateInstance (type As Type, args As Object(), activationAttributes As Object()) As Object

Parametry

type
Type

Typ objektu, který má být vytvořen.The type of object to create.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt, který určuje adresu URL, která je požadována k aktivaci vzdáleného objektu.This is typically an array that contains a single UrlAttribute object that specifies the URL that is required to activate a remote object.

Tento parametr se vztahuje k objektům aktivovaným klientem.This parameter is related to client-activated objects. Aktivace klientů je starší verze technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nové vývojové prostředí.Client activation is a legacy technology that is retained for backward compatibility but is not recommended for new development. Místo toho by se měly používat distribuované aplikace Windows Communication Foundation.Distributed applications should instead use Windows Communication Foundation.

Návraty

Object

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

type je null.type is null.

type není RuntimeType .type is not a RuntimeType.

-nebo--or- type je otevřený obecný typ (to znamená, že se ContainsGenericParameters vrátí vlastnost true ).type is an open generic type (that is, the ContainsGenericParameters property returns true).

type nemůže být TypeBuilder .type cannot be a TypeBuilder.

-nebo--or- Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- Sestavení, které obsahuje, type je dynamické sestavení, které bylo vytvořeno pomocí Save .The assembly that contains type is a dynamic assembly that was created with Save.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

Volaný konstruktor vyvolá výjimku.The constructor being called throws an exception.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

type je objekt modelu COM, ale identifikátor třídy použitý k získání tohoto typu je neplatný nebo identifikovaná třída není zaregistrována.type is a COM object but the class identifier used to obtain the type is invalid, or the identified class is not registered.

type není platný typ.type is not a valid type.

Poznámky

Konstruktor, který má být vyvolán, musí být přístupný a musí poskytovat nejvíce specifické shody se zadaným seznamem argumentů.The constructor to be invoked must be accessible and must provide the most specific match with the specified argument list.

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít pro přístup k typům NonPublic v případě, že volající byl udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení, která obsahuje typy NonPublic, omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access nonpublic types if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(String, String, Object[])

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného konstruktoru Assembly a bez parametrů.Creates an instance of the type whose name is specified, using the named assembly and parameterless constructor.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Object ^> ^ activationAttributes);
public static System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName, object?[]? activationAttributes);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, object[] activationAttributes);
static member CreateInstance : string * string * obj[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String, activationAttributes As Object()) As ObjectHandle

Parametry

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt, který určuje adresu URL, která je požadována k aktivaci vzdáleného objektu.This is typically an array that contains a single UrlAttribute object that specifies the URL that is required to activate a remote object.

Tento parametr se vztahuje k objektům aktivovaným klientem.This parameter is related to client-activated objects. Aktivace klientů je starší verze technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nové vývojové prostředí.Client activation is a legacy technology that is retained for backward compatibility but is not recommended for new development. Místo toho by se měly používat distribuované aplikace Windows Communication Foundation.Distributed applications should instead use Windows Communication Foundation.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Výjimky

typeName je null.typeName is null.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- activationAttributes není UrlAttributeactivationAttributes is not a UrlAttribute

skupin.array.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Došlo k chybě při pokusu o vzdálenou aktivaci v cíli zadaném v activationAttributes .An error occurred when attempting remote activation in a target specified in activationAttributes.

Poznámky

Metoda vrátí null Nullable<T> instance.The method returns null for the Nullable<T> instances.

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít k vytvoření typů NonPublic, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je udělená sada typů NonPublic omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to create nonpublic types if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the nonpublic types is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(String, String, Boolean, BindingFlags, Binder, Object[], CultureInfo, Object[], Evidence)

Upozornění

Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného sestavení a konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the type whose name is specified, using the named assembly and the constructor that best matches the specified parameters.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName, bool ignoreCase, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, cli::array <System::Object ^> ^ args, System::Globalization::CultureInfo ^ culture, cli::array <System::Object ^> ^ activationAttributes, System::Security::Policy::Evidence ^ securityInfo);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityInfo);
[System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName, bool ignoreCase, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, object[] args, System.Globalization.CultureInfo culture, object[] activationAttributes, System.Security.Policy.Evidence securityInfo);
static member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
[<System.Obsolete("Methods which use evidence to sandbox are obsolete and will be removed in a future release of the .NET Framework. Please use an overload of CreateInstance which does not take an Evidence parameter. See http://go.microsoft.com/fwlink/?LinkID=155570 for more information.")>]
static member CreateInstance : string * string * bool * System.Reflection.BindingFlags * System.Reflection.Binder * obj[] * System.Globalization.CultureInfo * obj[] * System.Security.Policy.Evidence -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String, ignoreCase As Boolean, bindingAttr As BindingFlags, binder As Binder, args As Object(), culture As CultureInfo, activationAttributes As Object(), securityInfo As Evidence) As ObjectHandle

Parametry

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

ignoreCase
Boolean

true Chcete-li určit, že hledání typeName nerozlišuje velká a malá písmena; false Chcete-li určit, že hledání rozlišuje malá a velká písmena.true to specify that the search for typeName is not case-sensitive; false to specify that the search is case-sensitive.

bindingAttr
BindingFlags

Kombinace nuly nebo více bitových příznaků, které mají vliv na hledání typeName konstruktoru.A combination of zero or more bit flags that affect the search for the typeName constructor. Pokud bindingAttr je nula, je prováděno hledání rozlišovat velikost písmen pro veřejné konstruktory.If bindingAttr is zero, a case-sensitive search for public constructors is conducted.

binder
Binder

Objekt, který používá bindingAttr a args k hledání a identifikaci typeName konstruktoru.An object that uses bindingAttr and args to seek and identify the typeName constructor. Pokud binder je null , použije se výchozí pořadač.If binder is null, the default binder is used.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

culture
CultureInfo

Informace specifické pro jazykovou verzi, které řídí převod args na formální typy deklarované pro typeName konstruktor.Culture-specific information that governs the coercion of args to the formal types declared for the typeName constructor. Pokud culture je null , CultureInfo použije se pro aktuální vlákno.If culture is null, the CultureInfo for the current thread is used.

activationAttributes
Object[]

Pole jednoho nebo několika atributů, které se mohou podílet na aktivaci.An array of one or more attributes that can participate in activation. Obvykle se jedná o pole, které obsahuje jeden UrlAttribute objekt, který určuje adresu URL, která je požadována k aktivaci vzdáleného objektu.This is typically an array that contains a single UrlAttribute object that specifies the URL that is required to activate a remote object.

Tento parametr se vztahuje k objektům aktivovaným klientem.This parameter is related to client-activated objects. Aktivace klientů je starší verze technologie, která se zachovává kvůli zpětné kompatibilitě, ale nedoporučuje se pro nové vývojové prostředí.Client activation is a legacy technology that is retained for backward compatibility but is not recommended for new development. Místo toho by se měly používat distribuované aplikace Windows Communication Foundation.Distributed applications should instead use Windows Communication Foundation.

securityInfo
Evidence

Informace, které slouží k rozhodování o zásadách zabezpečení a udělení oprávnění pro kód.Information used to make security policy decisions and grant code permissions.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Atributy

Výjimky

typeName je null.typeName is null.

Nebyl nalezen žádný odpovídající konstruktor.No matching constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Konstruktor, který byl vyvolán prostřednictvím reflexe, vyvolal výjimku.The constructor, which was invoked through reflection, threw an exception.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- activationAttributes není prázdné pole a typ, který se vytváří, není odvozený od MarshalByRefObject .activationAttributes is not an empty array, and the type being created does not derive from MarshalByRefObject.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Poznámky

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít k vytvoření typů a členů NonPublic, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení obsahující typy NonPublic a členy omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to create nonpublic types and members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types and members is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(Type, Object[])

Vytvoří instanci zadaného typu pomocí konstruktoru, který nejlépe odpovídá zadaným parametrům.Creates an instance of the specified type using the constructor that best matches the specified parameters.

public:
 static System::Object ^ CreateInstance(Type ^ type, ... cli::array <System::Object ^> ^ args);
public:
 static System::Object ^ CreateInstance(Type ^ type, cli::array <System::Object ^> ^ args);
public static object CreateInstance (Type type, params object[] args);
public static object? CreateInstance (Type type, params object?[]? args);
public static object CreateInstance (Type type, object[] args);
static member CreateInstance : Type * obj[] -> obj
Public Shared Function CreateInstance (type As Type, ParamArray args As Object()) As Object
Public Shared Function CreateInstance (type As Type, args As Object()) As Object

Parametry

type
Type

Typ objektu, který má být vytvořen.The type of object to create.

args
Object[]

Pole argumentů, které se shodují s číslem, pořadím a typem parametrů konstruktoru, který se má vyvolat.An array of arguments that match in number, order, and type the parameters of the constructor to invoke. Pokud args je prázdné pole nebo null , konstruktor, který nepřijímá žádné parametry (konstruktor bez parametrů), je vyvolán.If args is an empty array or null, the constructor that takes no parameters (the parameterless constructor) is invoked.

Návraty

Object

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

type je null.type is null.

type není RuntimeType .type is not a RuntimeType.

-nebo--or- type je otevřený obecný typ (to znamená, že se ContainsGenericParameters vrátí vlastnost true ).type is an open generic type (that is, the ContainsGenericParameters property returns true).

type nemůže být TypeBuilder .type cannot be a TypeBuilder.

-nebo--or- Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- Sestavení, které obsahuje, type je dynamické sestavení, které bylo vytvořeno pomocí Save .The assembly that contains type is a dynamic assembly that was created with Save.

-nebo--or- Konstruktor, který nejlépe odpovídá, argsvarargs argumenty.The constructor that best matches args has varargs arguments.

Volaný konstruktor vyvolá výjimku.The constructor being called throws an exception.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

type je objekt modelu COM, ale identifikátor třídy použitý k získání tohoto typu je neplatný nebo identifikovaná třída není zaregistrována.type is a COM object but the class identifier used to obtain the type is invalid, or the identified class is not registered.

type není platný typ.type is not a valid type.

Příklady

Následující příklad volá CreateInstance(Type, Object[]) metodu pro vytvoření String objektu.The following example calls the CreateInstance(Type, Object[]) method to create a String object. Volá String.String(Char[], Int32, Int32) konstruktor pro vytvoření instance řetězce, který obsahuje deset prvků z pole znaků začínající na čtrnáctý pozici.It calls the String.String(Char[], Int32, Int32) constructor to instantiate a string that contains ten elements from a character array starting at the fourteenth position.

using System;

public class Example
{
   public static void Main()
   {
      // Initialize array of characters from a to z.
      Char[] chars = new Char[26];
      for (int ctr = 0; ctr < 26; ctr++)
         chars[ctr] = (char) (ctr + 0x0061);

      Object obj = Activator.CreateInstance(typeof(String),
                                            new Object[] { chars, 13, 10 } );
      Console.WriteLine(obj);
   }
}
// The example displays the following output:
//       nopqrstuvw
Module Example
   Public Sub Main()
      ' Initialize array of characters from a to z.
      Dim chars(25) As Char 
      For ctr As Short = 0 To 25
         chars(ctr) = ChrW(ctr + &h0061)
      Next 
      Dim obj As Object = Activator.CreateInstance(GetType(String),
                                                   { chars, 13, 10 })
      Console.WriteLine(obj)                                          
   End Sub
End Module
' The example displays the following output:
'       nopqrstuvw

Následující příklad vytvoří vícenásobné pole, jehož prvky jsou argumenty, které mají být předány String konstruktoru.The following example creates a jagged array whose elements are arguments to be passed to a String constructor. Příklad pak předá jednotlivá pole CreateInstance(Type, Object[]) metodě k vyvolání příslušného konstruktoru řetězce.The example then passes each array to the CreateInstance(Type, Object[]) method to invoke the appropriate string constructor.

using System;

public class Example
{
   public static void Main()
   {
      char[] characters = { 'a', 'b', 'c', 'd', 'e', 'f' };
      object[][] arguments = new object[3][] { new object[] { characters },
                                               new object[] { characters, 1, 4 },
                                               new object[] { characters[1], 20 } };

      for (int ctr = 0; ctr <= arguments.GetUpperBound(0); ctr++) {
         object[] args = arguments[ctr];
         object result = Activator.CreateInstance(typeof(String), args);
         Console.WriteLine("{0}: {1}", result.GetType().Name, result);
      }
   }
}
// The example displays the following output:
//    String: abcdef
//    String: bcde
//    String: bbbbbbbbbbbbbbbbbbbb
Module Example
   Public Sub Main()
      Dim characters() As Char = { "a"c, "b"c, "c"c, "d"c, "e"c, "f"c }
      Dim arguments()() As Object = new Object(2)() { New Object() { characters },
                                                      New Object() { characters, 1, 4 },
                                                      New Object() { characters(1), 20 } }

      For ctr As Integer = 0 To arguments.GetUpperBound(0)
         Dim args() As Object = arguments(ctr)
         Dim result As Object = Activator.CreateInstance(GetType(String), args)
         Console.WriteLine("{0}: {1}", result.GetType().Name, result)
      Next
   End Sub
End Module
' The example displays the following output:
'       String: abcdef
'       String: bcde
'       String: bbbbbbbbbbbbbbbbbbbb

Poznámky

Konstruktor, který má být vyvolán, musí být přístupný a musí poskytovat nejvíce specifické shody se zadaným seznamem argumentů.The constructor to be invoked must be accessible and must provide the most specific match with the specified argument list.

Metoda vrátí null Nullable<T> instance bez hodnoty.The method returns null for the Nullable<T> instances with no value.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít pro přístup k typům NonPublic v případě, že volající byl udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení, která obsahuje typy NonPublic, omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access nonpublic types if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(Type, Boolean)

Vytvoří instanci zadaného typu pomocí konstruktoru bez parametrů daného typu.Creates an instance of the specified type using that type's parameterless constructor.

public:
 static System::Object ^ CreateInstance(Type ^ type, bool nonPublic);
public static object? CreateInstance (Type type, bool nonPublic);
public static object CreateInstance (Type type, bool nonPublic);
static member CreateInstance : Type * bool -> obj
Public Shared Function CreateInstance (type As Type, nonPublic As Boolean) As Object

Parametry

type
Type

Typ objektu, který má být vytvořen.The type of object to create.

nonPublic
Boolean

true Pokud se může shodovat konstruktor s parametrem Public nebo NonPublic; false Pokud se může shodovat pouze veřejný konstruktor bez parametrů.true if a public or nonpublic parameterless constructor can match; false if only a public parameterless constructor can match.

Návraty

Object

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

type je null.type is null.

type není RuntimeType .type is not a RuntimeType.

-nebo--or- type je otevřený obecný typ (to znamená, že se ContainsGenericParameters vrátí vlastnost true ).type is an open generic type (that is, the ContainsGenericParameters property returns true).

type nemůže být TypeBuilder .type cannot be a TypeBuilder.

-nebo--or- Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- Sestavení, které obsahuje, type je dynamické sestavení, které bylo vytvořeno pomocí Save .The assembly that contains type is a dynamic assembly that was created with Save.

Volaný konstruktor vyvolá výjimku.The constructor being called throws an exception.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

type je objekt modelu COM, ale identifikátor třídy použitý k získání tohoto typu je neplatný nebo identifikovaná třída není zaregistrována.type is a COM object but the class identifier used to obtain the type is invalid, or the identified class is not registered.

type není platný typ.type is not a valid type.

Poznámky

Metoda vrátí null Nullable<T> instance.The method returns null for the Nullable<T> instances.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít pro přístup k NonPublic typům a členům, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení, která obsahuje typy NonPublic a členy, omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access nonpublic types and members if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types and members is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(String, String)

Vytvoří instanci typu, jejíž název je zadán, pomocí pojmenovaného konstruktoru Assembly a bez parametrů.Creates an instance of the type whose name is specified, using the named assembly and parameterless constructor.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle? CreateInstance (string assemblyName, string typeName);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (string assemblyName, string typeName);
static member CreateInstance : string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (assemblyName As String, typeName As String) As ObjectHandle

Parametry

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Výjimky

typeName je null.typeName is null.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.You cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Konstruktor, který byl vyvolán prostřednictvím reflexe, vyvolal výjimku.The constructor, which was invoked through reflection, threw an exception.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Příklady

Následující příklad definuje třídu s názvem Person v sestavení s názvem PersonInfo .The following example defines a class named Person in an assembly named PersonInfo. Všimněte si, že Person Třída má dva konstruktory, z nichž jeden je bez parametrů.Note that the Person class has two constructors, one of which is parameterless.

using System;

public class Person
{
   private string _name;

   public Person()
   { }

   public Person(string name)
   {
      this._name = name;
   }

   public string Name
   { get { return this._name; }
     set { this._name = value; } }

   public override string ToString()
   {
      return this._name;
   }
}
Public Class Person
   Private _name As String
   
   Public Sub New()
   End Sub
   
   Public Sub New(name As String)
      Me._name = name
   End Sub
   
   Public Property Name As String
      Get
         Return Me._name
      End Get
      Set
         Me._name = value
      End Set
   End Property
   
   Public Overrides Function ToString() As String
      Return Me._name
   End Function
End Class

Následující příklad volá CreateInstance(String, String) metodu pro vytvoření instance Person třídy.The following example calls the CreateInstance(String, String) method to instantiate the Person class. Vyžaduje odkaz na PersonInfo.dll pro přidání do projektu.It requires a reference to PersonInfo.dll to be added to the project. Vzhledem k tomu CreateInstance(String, String) , že metoda volá Person konstruktor bez parametrů třídy, příklad přiřadí hodnotu ke své Name Vlastnosti.Because the CreateInstance(String, String) method calls the Person class parameterless constructor, the example assigns a value to its Name property.

using System;
using System.Runtime.Remoting;

public class Example
{
   public static void Main()
   {
      ObjectHandle handle = Activator.CreateInstance("PersonInfo", "Person");
      Person p = (Person) handle.Unwrap();
      p.Name = "Samuel";
      Console.WriteLine(p);
   }
}
// The example displays the following output:
//        Samuel
Imports System.Runtime.Remoting

Module Example
   Public Sub Main()
      Dim handle As ObjectHandle = Activator.CreateInstance("PersonInfo", "Person")
      Dim p As Person = CType(handle.Unwrap(), Person)
      p.Name = "Samuel"
      Console.WriteLine(p)
   End Sub
End Module
' The example displays the following output:
'       Samuel

Nicméně CreateInstance často se volá za účelem vytvoření instance typu, který překračuje hranice počítače nebo který není znám v době návrhu.However, CreateInstance is frequently called to instantiate a type that crosses machine boundaries or that is not known at design time. V tomto případě nemůžete zahrnout odkaz na sestavení v projektu a nejdou provést volání na začátku vazby na členy typu.In this case, you cannot include a reference to the assembly in the project and cannot make early-bound calls to the type's members. Chcete-li toto omezení obejít, následující příklad používá CreateInstance metodu spolu s reflexí k přiřazení hodnoty Person Name vlastnosti objektu a k zobrazení její hodnoty.To work around this limitation, the following example uses the CreateInstance method along with reflection to assign a value to the Person object's Name property and to display its value.

using System;
using System.Reflection;
using System.Runtime.Remoting;

public class Example
{
   public static void Main()
   {
      ObjectHandle handle = Activator.CreateInstance("PersonInfo", "Person");
      Object p = handle.Unwrap();
      Type t = p.GetType();
      PropertyInfo prop = t.GetProperty("Name");
      if (prop != null)
         prop.SetValue(p, "Samuel");

      MethodInfo method = t.GetMethod("ToString");
      Object retVal = method.Invoke(p, null);
      if (retVal != null)
         Console.WriteLine(retVal);
   }
}
// The example displays the following output:
//        Samuel
Imports System.Reflection
Imports System.Runtime.Remoting

Module Example
   Public Sub Main()
      Dim handle As ObjectHandle = Activator.CreateInstance("PersonInfo", "Person")
      Dim p As Object = handle.Unwrap()
      Dim t As Type = p.GetType()
      Dim prop As PropertyInfo = t.GetProperty("Name")
      if Not prop Is Nothing Then
         prop.SetValue(p, "Samuel")
      End If   
      Dim method As MethodInfo = t.GetMethod("ToString")
      Dim retVal As Object = method.Invoke(p, Nothing) 
      If Not retVal Is Nothing Then
         Console.WriteLine(retVal)
      End If
   End Sub
End Module
' The example displays the following output:
'       Samuel

Poznámky

Metoda vrátí null Nullable<T> instance.The method returns null for the Nullable<T> instances.

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

assemblyName může to být jedna z následujících:assemblyName can be either of the following:

  • Jednoduchý název sestavení bez jeho cesty nebo přípony souboru.The simple name of an assembly, without its path or file extension. Například zadejte TypeExtensions pro sestavení, jehož cesta a název jsou .\bin\TypeExtensions.dll.For example, you would specify TypeExtensions for an assembly whose path and name are .\bin\TypeExtensions.dll.

  • Úplný název podepsaného sestavení, který se skládá z jeho jednoduchého názvu, verze, jazykové verze a tokenu veřejného klíče; například "TypeExtensions, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = 181869f2f7435b51".The full name of a signed assembly, which consists of its simple name, version, culture, and public key token; for example, "TypeExtensions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=181869f2f7435b51".

Další informace o tom, jak modul common language runtime identifikuje a načítá sestavení, naleznete v tématu jak modul runtime vyhledává sestavení.For more information on how the common language runtime identifies and loads assemblies, see How the Runtime Locates Assemblies. Informace o použití konfiguračního souboru aplikace k definování umístění sestavení naleznete v tématu určení umístění sestavení.For information on using the application configuration file to define assembly locations, see Specifying an Assembly's Location. Pokud assemblyName je nalezen, je načten ve výchozím kontextu.If assemblyName is found, it is loaded in the default context.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít k vytvoření typů NonPublic, pokud byl volající udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud sada udělení sestavení, která obsahuje typy NonPublic, je omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to create nonpublic types if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(ActivationContext, String[])

Vytvoří instanci typu, která je určena zadaným ActivationContext objektem a aktivována se zadanými vlastními aktivačními daty.Creates an instance of the type that is designated by the specified ActivationContext object and activated with the specified custom activation data.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(ActivationContext ^ activationContext, cli::array <System::String ^> ^ activationCustomData);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (ActivationContext activationContext, string[] activationCustomData);
static member CreateInstance : ActivationContext * string[] -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (activationContext As ActivationContext, activationCustomData As String()) As ObjectHandle

Parametry

activationContext
ActivationContext

Objekt kontextu aktivace, který určuje objekt, který má být vytvořen.An activation context object that specifies the object to create.

activationCustomData
String[]

Pole řetězců Unicode, které obsahují vlastní aktivační data.An array of Unicode strings that contain custom activation data.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořenému objektu.A handle that must be unwrapped to access the newly created object.

Poznámky

Použijte ObjectHandle.Unwrap metodu k rozbalení návratové hodnoty.Use the ObjectHandle.Unwrap method to unwrap the return value.

Aktivační kontext se používá během aktivace založené na manifestu k nastavení zásad domény a k zajištění modelu zabezpečení založeného na aplikaci.The activation context is used during manifest-based activation to set up the domain policy and to provide an application-based security model. ActivationContextTřída obsahuje ApplicationIdentity objekt, který poskytuje přístup k manifestu aplikace.The ActivationContext class contains an ApplicationIdentity object that provides access to the application manifest. Další informace naleznete v tématu ApplicationSecurityManager Třída.For more information, see the ApplicationSecurityManager class.

Viz také

Platí pro

CreateInstance(Type)

Vytvoří instanci zadaného typu pomocí konstruktoru bez parametrů daného typu.Creates an instance of the specified type using that type's parameterless constructor.

public:
 static System::Object ^ CreateInstance(Type ^ type);
public static object CreateInstance (Type type);
public static object? CreateInstance (Type type);
static member CreateInstance : Type -> obj
Public Shared Function CreateInstance (type As Type) As Object

Parametry

type
Type

Typ objektu, který má být vytvořen.The type of object to create.

Návraty

Object

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

type je null.type is null.

type není RuntimeType .type is not a RuntimeType.

-nebo--or- type je otevřený obecný typ (to znamená, že se ContainsGenericParameters vrátí vlastnost true ).type is an open generic type (that is, the ContainsGenericParameters property returns true).

type nemůže být TypeBuilder .type cannot be a TypeBuilder.

-nebo--or- Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

-nebo--or- Sestavení, které obsahuje, type je dynamické sestavení, které bylo vytvořeno pomocí Save .The assembly that contains type is a dynamic assembly that was created with Save.

Volaný konstruktor vyvolá výjimku.The constructor being called throws an exception.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktní třídy, nebo byl tento člen vyvolán s mechanismem pozdní vazby.Cannot create an instance of an abstract class, or this member was invoked with a late-binding mechanism.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

type je objekt modelu COM, ale identifikátor třídy použitý k získání tohoto typu je neplatný nebo identifikovaná třída není zaregistrována.type is a COM object but the class identifier used to obtain the type is invalid, or the identified class is not registered.

type není platný typ.type is not a valid type.

Příklady

Následující příklad kódu ukazuje, jak zavolat CreateInstance(Type) metodu.The following code example demonstrates how to call the CreateInstance(Type) method. Vytvoří se instance několika různých typů a zobrazí se jejich výchozí hodnoty.Instances of several different types are created and their default values are displayed.

using namespace System;

ref class DynamicInstanceList
{
private:
    static String^ instanceSpec = "System.EventArgs;System.Random;" +
        "System.Exception;System.Object;System.Version";

public:
    static void Main()
    {
        array<String^>^ instances = instanceSpec->Split(';');
        Array^ instlist = Array::CreateInstance(Object::typeid, instances->Length);
        Object^ item;

        for (int i = 0; i < instances->Length; i++)
        {
            // create the object from the specification string
            Console::WriteLine("Creating instance of: {0}", instances[i]);
            item = Activator::CreateInstance(Type::GetType(instances[i]));
            instlist->SetValue(item, i);
        }
        Console::WriteLine("\nObjects and their default values:\n");
        for each (Object^ o in instlist)
        {
            Console::WriteLine("Type:     {0}\nValue:    {1}\nHashCode: {2}\n",
                o->GetType()->FullName, o->ToString(), o->GetHashCode());
        }
    }
};

int main()
{
    DynamicInstanceList::Main();
}

// This program will display output similar to the following:
//
// Creating instance of: System.EventArgs
// Creating instance of: System.Random
// Creating instance of: System.Exception
// Creating instance of: System.Object
// Creating instance of: System.Version
//
// Objects and their default values:
//
// Type:     System.EventArgs
// Value:    System.EventArgs
// HashCode: 46104728
//
// Type:     System.Random
// Value:    System.Random
// HashCode: 12289376
//
// Type:     System.Exception
// Value:    System.Exception: Exception of type 'System.Exception' was thrown.
// HashCode: 55530882
//
// Type:     System.Object
// Value:    System.Object
// HashCode: 30015890
//
// Type:     System.Version
// Value:    0.0
// HashCode: 1048575
using System;

class DynamicInstanceList
{
    private static string instanceSpec = "System.EventArgs;System.Random;" +
        "System.Exception;System.Object;System.Version";

    public static void Main()
    {
        string[] instances = instanceSpec.Split(';');
        Array instlist = Array.CreateInstance(typeof(object), instances.Length);
        object item;
        for (int i = 0; i < instances.Length; i++)
        {
            // create the object from the specification string
            Console.WriteLine("Creating instance of: {0}", instances[i]);
            item = Activator.CreateInstance(Type.GetType(instances[i]));
            instlist.SetValue(item, i);
        }
        Console.WriteLine("\nObjects and their default values:\n");
        foreach (object o in instlist)
        {
            Console.WriteLine("Type:     {0}\nValue:    {1}\nHashCode: {2}\n",
                o.GetType().FullName, o.ToString(), o.GetHashCode());
        }
    }
}

// This program will display output similar to the following:
//
// Creating instance of: System.EventArgs
// Creating instance of: System.Random
// Creating instance of: System.Exception
// Creating instance of: System.Object
// Creating instance of: System.Version
//
// Objects and their default values:
//
// Type:     System.EventArgs
// Value:    System.EventArgs
// HashCode: 46104728
//
// Type:     System.Random
// Value:    System.Random
// HashCode: 12289376
//
// Type:     System.Exception
// Value:    System.Exception: Exception of type 'System.Exception' was thrown.
// HashCode: 55530882
//
// Type:     System.Object
// Value:    System.Object
// HashCode: 30015890
//
// Type:     System.Version
// Value:    0.0
// HashCode: 1048575
Class DynamicInstanceList
    Private Shared instanceSpec As String = "System.EventArgs;System.Random;" + _
        "System.Exception;System.Object;System.Version"

    Public Shared Sub Main()
        Dim instances() As String = instanceSpec.Split(";")
        Dim instlist As Array = Array.CreateInstance(GetType(Object), instances.Length)
        Dim item As Object

        For i As Integer = 0 To instances.Length -1
            ' create the object from the specification string
            Console.WriteLine("Creating instance of: {0}", instances(i))
            item = Activator.CreateInstance(Type.GetType(instances(i)))
            instlist.SetValue(item, i)
        Next i
        Console.WriteLine(Environment.NewLine + "Objects and their default values:" + Environment.NewLine)
        For Each o As Object In instlist
            Console.WriteLine("Type:     {0}" + Environment.NewLine + "Value:    {1}" + _
                Environment.NewLine + "HashCode: {2}" + Environment.NewLine, _
                o.GetType().FullName, o.ToString(), o.GetHashCode())
        Next o
    End Sub
End Class

' This program will display output similar to the following:
'
' Creating instance of: System.EventArgs
' Creating instance of: System.Random
' Creating instance of: System.Exception
' Creating instance of: System.Object
' Creating instance of: System.Version
'
' Objects and their default values:
'
' Type:     System.EventArgs
' Value:    System.EventArgs
' HashCode: 46104728
'
' Type:     System.Random
' Value:    System.Random
' HashCode: 12289376
'
' Type:     System.Exception
' Value:    System.Exception: Exception of type 'System.Exception' was thrown.
' HashCode: 55530882
'
' Type:     System.Object
' Value:    System.Object
' HashCode: 30015890
'
' Type:     System.Version
' Value:    0.0
' HashCode: 1048575

Poznámky

Konstruktor, který má být vyvolán, musí být přístupný.The constructor to be invoked must be accessible.

Metoda vrátí null Nullable<T> instance.The method returns null for the Nullable<T> instances.

Poznámka

Počínaje verzí .NET Framework 2,0 Service Pack 1 lze tuto metodu použít pro přístup k typům NonPublic v případě, že volající byl udělen ReflectionPermission s ReflectionPermissionFlag.RestrictedMemberAccess příznakem a pokud je sada udělení sestavení, která obsahuje typy NonPublic, omezena na udělenou sadu volajícího nebo na podmnožinu.Starting with the .NET Framework 2.0 Service Pack 1, this method can be used to access nonpublic types if the caller has been granted ReflectionPermission with the ReflectionPermissionFlag.RestrictedMemberAccess flag and if the grant set of the assembly that contains the nonpublic types is restricted to the caller's grant set or to a subset thereof. (Další informace najdete v tématu informace o zabezpečení pro reflexi.)(See Security Considerations for Reflection.)

Chcete-li použít tuto funkci, vaše aplikace by měla cílit na .NET Framework 3,5 nebo novější.To use this functionality, your application should target the .NET Framework 3.5 or later.

Platí pro

CreateInstance(ActivationContext)

Vytvoří instanci typu určenou zadaným ActivationContext objektem.Creates an instance of the type designated by the specified ActivationContext object.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(ActivationContext ^ activationContext);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (ActivationContext activationContext);
static member CreateInstance : ActivationContext -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (activationContext As ActivationContext) As ObjectHandle

Parametry

activationContext
ActivationContext

Objekt kontextu aktivace, který určuje objekt, který má být vytvořen.An activation context object that specifies the object to create.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořenému objektu.A handle that must be unwrapped to access the newly created object.

Poznámky

Metoda vrátí null Nullable<T> instance.The method returns null for the Nullable<T> instances.

Použijte ObjectHandle.Unwrap metodu k rozbalení návratové hodnoty.Use the ObjectHandle.Unwrap method to unwrap the return value.

Aktivační kontext se používá během aktivace založené na manifestu k nastavení zásad domény a k zajištění modelu zabezpečení založeného na aplikaci.The activation context is used during manifest-based activation to set up the domain policy and to provide an application-based security model. ActivationContextTřída obsahuje ApplicationIdentity objekt, který poskytuje přístup k manifestu aplikace.The ActivationContext class contains an ApplicationIdentity object that provides access to the application manifest. Další informace naleznete v tématu ApplicationSecurityManager Třída.For more information, see the ApplicationSecurityManager class.

Viz také

Platí pro

CreateInstance(AppDomain, String, String)

Vytvoří instanci typu, jejíž název je zadán v zadané vzdálené doméně, pomocí pojmenovaného sestavení a konstruktoru bez parametrů.Creates an instance of the type whose name is specified in the specified remote domain, using the named assembly and parameterless constructor.

public:
 static System::Runtime::Remoting::ObjectHandle ^ CreateInstance(AppDomain ^ domain, System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName);
[System.Security.SecurityCritical]
public static System.Runtime.Remoting.ObjectHandle CreateInstance (AppDomain domain, string assemblyName, string typeName);
static member CreateInstance : AppDomain * string * string -> System.Runtime.Remoting.ObjectHandle
[<System.Security.SecurityCritical>]
static member CreateInstance : AppDomain * string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateInstance (domain As AppDomain, assemblyName As String, typeName As String) As ObjectHandle

Parametry

domain
AppDomain

Vzdálená doména, ve které je vytvořen typ s názvem typeName .The remote domain where the type named typeName is created.

assemblyName
String

Název sestavení, kde je žádáno o typ s názvem typeName .The name of the assembly where the type named typeName is sought. assemblyNameV případě je null prohledáváno spuštěné sestavení.If assemblyName is null, the executing assembly is searched.

typeName
String

Plně kvalifikovaný název typu, pro který chcete vytvořit instanci.The fully qualified name of the type to create an instance of.

Návraty

ObjectHandle

Popisovač, který je nutné rozbalením pro přístup k nově vytvořené instanci.A handle that must be unwrapped to access the newly created instance.

Atributy

Výjimky

typeName nebo domain je null .typeName or domain is null.

Nebyl nalezen žádný odpovídající veřejný konstruktor.No matching public constructor was found.

typename nebyl nalezen v assemblyName .typename was not found in assemblyName.

assemblyName nebyl nalezen.assemblyName was not found.

Volající nemá oprávnění k volání tohoto konstruktoru.The caller does not have permission to call this constructor.

Nelze vytvořit instanci abstraktního typu.Cannot create an instance of an abstract type.

-nebo--or-

Tento člen byl vyvolán pomocí mechanismu pozdní vazby.This member was invoked with a late-binding mechanism.

Konstruktor, který byl vyvolán prostřednictvím reflexe, vyvolal výjimku.The constructor, which was invoked through reflection, threw an exception.

Typ COM nebyl získán prostřednictvím GetTypeFromProgID nebo GetTypeFromCLSID .The COM type was not obtained through GetTypeFromProgID or GetTypeFromCLSID.

Vytváření TypedReference typů, ArgIterator , a Void RuntimeArgumentHandle nebo polí těchto typů není podporováno.Creation of TypedReference, ArgIterator, Void, and RuntimeArgumentHandle types, or arrays of those types, is not supported.

assemblyName není platným sestavením.assemblyName is not a valid assembly.

-nebo--or- Modul common language runtime (CLR) verze 2,0 nebo novější je aktuálně načten a assemblyName byl zkompilován pro verzi modulu CLR, která je novější než aktuálně načtená verze.The common language runtime (CLR) version 2.0 or later is currently loaded, and assemblyName was compiled for a version of the CLR that is later than the currently loaded version. Všimněte si, že .NET Framework verze 2,0, 3,0 a 3,5 všechny používají CLR verze 2,0.Note that the .NET Framework versions 2.0, 3.0, and 3.5 all use CLR version 2.0.

Sestavení nebo modul byly zavedeny dvakrát se dvěma různými legitimacemi.An assembly or module was loaded twice with two different evidences.

-nebo--or-

Název sestavení nebo základ kódu jsou neplatné.The assembly name or code base is invalid.

Poznámky

Metoda vrátí null Nullable<T> instance.The method returns null for the Nullable<T> instances.

Použijte CreateInstance v případě, že hostitel potřebuje spustit kód v doméně aplikace, která má omezená oprávnění zabezpečení.Use CreateInstance when a host needs to execute code in an application domain that has restricted security permissions.

Slouží ObjectHandle.Unwrap k rozbalení návratové hodnoty.Use ObjectHandle.Unwrap to unwrap the return value.

Poznámka

Tato metoda používá SecurityAction.LinkDemand k vyžadování plného vztahu důvěryhodnosti bezprostředního volajícího.This method uses SecurityAction.LinkDemand to require the immediate caller to have full trust.

Platí pro

CreateInstance<T>()

Vytvoří instanci typu určenou zadaným parametrem obecného typu s použitím konstruktoru bez parametrů.Creates an instance of the type designated by the specified generic type parameter, using the parameterless constructor.

public:
generic <typename T>
 static T CreateInstance();
public static T CreateInstance<T> ();
static member CreateInstance : unit -> 'T
Public Shared Function CreateInstance(Of T) () As T

Parametry typu

T

Typ, který se má vytvořit.The type to create.

Návraty

T

Odkaz na nově vytvořený objekt.A reference to the newly created object.

Výjimky

Nelze vytvořit instanci abstraktní třídy, nebo typ, který je určen pro, nemá T konstruktor bez parametrů.Cannot create an instance of an abstract class, or the type that is specified for T does not have a parameterless constructor.

Poznámky

CreateInstance<T>()Obecná metoda je používána kompilátory k implementaci vytváření instancí typů určených parametry typu.The CreateInstance<T>() generic method is used by compilers to implement the instantiation of types specified by type parameters. Například v následující obecné metodě implementace new T() ( gcnew T() v jazyce C++) používá CreateInstance<T>() obecnou metodu.For example, in the following generic method, the implementation of new T() (gcnew T() in C++) uses the CreateInstance<T>() generic method.

public:
    generic <typename T> where T:gcnew()
    static T Bar()
    {
        return gcnew T();
    }
public static T Factory<T>() where T : new()
{
    return new T();
}
Public Shared Function Factory(Of T As New)() As T
    Return New T()
End Function

Obecně neexistuje žádné použití pro CreateInstance<T>() obecnou metodu v kódu aplikace, protože typ musí být známý v době kompilace.In general, there is no use for the CreateInstance<T>() generic method in application code, because the type must be known at compile time. Pokud je tento typ znám v době kompilace, lze použít normální syntaxi vytváření instancí ( new operátor v jazyce C#, New v Visual Basic v gcnew jazyce C++).If the type is known at compile time, normal instantiation syntax can be used (new operator in C#, New in Visual Basic, gcnew in C++). Pokud není typ v době kompilace znám, můžete zavolat neobecné přetížení CreateInstance .If the type is not known at compile time, you can call a non-generic overload of CreateInstance.

Nejsou k dispozici žádná přetížení CreateInstance<T>() Obecné metody, která přebírají seznamy argumentů, protože neobecná přetížení CreateInstance již poskytují řešení pozdní vazby konstruktoru.There are no overloads of the CreateInstance<T>() generic method that take argument lists, because the non-generic overloads of CreateInstance already provide late-bound constructor resolution.

Platí pro