Exporter (0) Imprimer
Développer tout

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

Remarque : cette méthode est nouvelle dans le .NET Framework version 2.0.

Crée une instance du type dont le nom est spécifié dans le domaine distant spécifié, en utilisant l'assembly nommé et le constructeur qui correspond le mieux aux paramètres spécifiés.

Espace de noms : System
Assembly : mscorlib (dans mscorlib.dll)

public static ObjectHandle CreateInstance (
	AppDomain domain,
	string assemblyName,
	string typeName,
	bool ignoreCase,
	BindingFlags bindingAttr,
	Binder binder,
	Object[] args,
	CultureInfo culture,
	Object[] activationAttributes,
	Evidence securityAttributes
)
public static ObjectHandle CreateInstance (
	AppDomain domain, 
	String assemblyName, 
	String typeName, 
	boolean ignoreCase, 
	BindingFlags bindingAttr, 
	Binder binder, 
	Object[] args, 
	CultureInfo culture, 
	Object[] activationAttributes, 
	Evidence securityAttributes
)
public static function CreateInstance (
	domain : AppDomain, 
	assemblyName : String, 
	typeName : String, 
	ignoreCase : boolean, 
	bindingAttr : BindingFlags, 
	binder : Binder, 
	args : Object[], 
	culture : CultureInfo, 
	activationAttributes : Object[], 
	securityAttributes : Evidence
) : ObjectHandle

Paramètres

domain

Domaine dans lequel le type nommé typeName est créé.

assemblyName

Nom de l'assembly dans lequel le type nommé typeName est recherché. Si assemblyName est référence Null (Nothing en Visual Basic), la recherche s'effectue dans l'assembly en cours d'exécution.

typeName

Nom du type préféré.

ignoreCase

true pour spécifier que la recherche de typeName ne respecte pas la casse ; false pour spécifier que la recherche respecte la casse.

bindingAttr

Combinaison de zéro ou de plusieurs bits indicateur qui affectent la recherche du constructeur typeName. Si bindingAttr a la valeur zéro, une recherche de constructeurs publics qui respecte la casse est effectuée.

binder

Objet qui utilise bindingAttr et args pour rechercher et identifier le constructeur typeName. Si binder est référence Null (Nothing en Visual Basic), le binder par défaut est utilisé.

args

Tableau d'arguments dont le nombre, l'ordre et le type correspondent aux paramètres du constructeur à appeler. Si args est un tableau vide ou référence Null (Nothing en Visual Basic), le constructeur qui ne prend aucun paramètre (constructeur par défaut) est appelé.

culture

Informations propres à la culture qui définissent la contrainte de args pour les types formels déclarés du constructeur typeName. Si culture est référence Null (Nothing en Visual Basic), le CultureInfo du thread en cours est utilisé.

activationAttributes

Tableau à un ou plusieurs attributs pouvant participer à l'activation.

securityAttributes

Informations utilisées pour prendre des décisions de stratégie de sécurité et accorder des autorisations de code.

Valeur de retour

Handle qui doit être désencapsulé pour accéder à la nouvelle instance créée.

Type d'exceptionCondition

ArgumentNullException

domain ou typeName est référence Null (Nothing en Visual Basic).

MissingMethodException

Aucun constructeur correspondant n'a été trouvé.

TypeLoadException

typename est introuvable dans assemblyName.

FileNotFoundException

assemblyName est introuvable.

MethodAccessException

L'appelant n'a pas l'autorisation d'appeler ce constructeur.

MemberAccessException

Impossible de créer une instance d'une classe abstraite ou ce membre a été appelé à l'aide d'un mécanisme à liaison tardive.

TargetInvocationException

Le constructeur, qui a été appelé par la réflexion, a levé une exception.

InvalidComObjectException

Le type COM n'a pas été obtenu via GetTypeFromProgID ni GetTypeFromCLSID.

NotSupportedException

La création des types TypedReference, ArgIterator, Void et RuntimeArgumentHandle, ou de tableaux de ces types, n'est pas prise en charge.

- ou -

activationAttributes n'est pas un tableau vide et le type en cours de création ne dérive pas de MarshalByRefObject.

BadImageFormatException

assemblyName n'est pas un assembly valide.

FileLoadException

Un assembly ou un module a été chargé à deux reprises avec deux preuves différentes.

Utilisez CreateInstance lorsqu'un hôte doit exécuter du code dans un AppDomain avec des autorisations de sécurité restreintes.

Utilisez ObjectHandle.Unwrap pour désencapsuler la valeur de retour.

RemarqueRemarque

Cette méthode utilise SecurityAction.LinkDemand pour que l'appelant immédiat bénéficie d'une confiance totale. Pour connaître les restrictions importantes relatives à l'utilisation du membre LinkDemand, consultez Demand et LinkDemand.

  • SecurityPermission  pour avoir la possibilité d'appeler du code non managé lors de la création d'une instance d'un délégué. Énumération associée : UnmanagedCode
  • ReflectionPermission  pour avoir la possibilité d'appeler des opérations sur tous les membres du type. Énumération associée : MemberAccess

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

.NET Framework

Prise en charge dans : 2.0

Ajouts de la communauté

AJOUTER
Afficher:
© 2015 Microsoft