Activator.CreateComInstanceFrom Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Crée une instance de l’objet COM dont le nom est spécifié.
Surcharges
CreateComInstanceFrom(String, String) |
Crée une instance de l’objet COM dont le nom est spécifié, à l’aide du fichier d’assembly nommé et du constructeur sans paramètre. |
CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm) |
Crée une instance de l’objet COM dont le nom est spécifié, à l’aide du fichier d’assembly nommé et du constructeur sans paramètre. |
CreateComInstanceFrom(String, String)
Crée une instance de l’objet COM dont le nom est spécifié, à l’aide du fichier d’assembly nommé et du constructeur sans paramètre.
public:
static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName);
static member CreateComInstanceFrom : string * string -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String) As ObjectHandle
Paramètres
- assemblyName
- String
Nom d’un fichier qui contient un assembly où le type nommé typeName
est recherché.
- typeName
- String
Nom du type à créer une instance de.
Retours
Handle qui doit être décompressé pour accéder à l’objet nouvellement créé ou null
pour Nullable<T> instances.
Exceptions
typeName
ou assemblyName
est null
.
Impossible de créer une instance via COM.
-ou-
typeName
n’a pas été trouvé dans assemblyName
.
Aucun constructeur correspondant n’a été trouvé.
assemblyName
est introuvable, ou le module que vous essayez de charger ne spécifie pas d’extension de nom de fichier.
Impossible de créer une instance d’une classe abstraite.
-ou-
Ce membre a été appelé avec un mécanisme de liaison tardive.
L’appelant ne peut pas fournir d’attributs d’activation pour un objet qui n’hérite pas de MarshalByRefObject.
assemblyName
est la chaîne vide (« »).
Remarques
Utilisez la méthode ObjectHandle.Unwrap pour annuler la valeur de retour.
Un attribut System.Runtime.InteropServices.ComVisibleAttribute avec une valeur de true
doit être appliqué explicitement ou par défaut au type COM afin que la méthode CreateComInstanceFrom puisse créer une instance de ce type ; sinon, TypeLoadException est levée.
Pour plus d’informations sur les autres exceptions pouvant être levées par des méthodes appelées, consultez la section Exceptions des méthodes Assembly.LoadFrom et CreateInstance.
Note
À compter de .NET Framework 2.0, cette méthode peut être utilisée pour créer des types non publics si l’appelant a reçu ReflectionPermission avec l’indicateur de ReflectionPermissionFlag.RestrictedMemberAccess et si l’ensemble d’octroi de l’assembly qui contient les types non publics est limité au jeu d’octroi de l’appelant ou à un sous-ensemble de celui-ci. (Consultez considérations relatives à la sécurité pour la réflexion.) Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5 ou version ultérieure.
S’applique à
CreateComInstanceFrom(String, String, Byte[], AssemblyHashAlgorithm)
Crée une instance de l’objet COM dont le nom est spécifié, à l’aide du fichier d’assembly nommé et du constructeur sans paramètre.
public:
static System::Runtime::Remoting::ObjectHandle ^ CreateComInstanceFrom(System::String ^ assemblyName, System::String ^ typeName, cli::array <System::Byte> ^ hashValue, System::Configuration::Assemblies::AssemblyHashAlgorithm hashAlgorithm);
public static System.Runtime.Remoting.ObjectHandle CreateComInstanceFrom (string assemblyName, string typeName, byte[] hashValue, System.Configuration.Assemblies.AssemblyHashAlgorithm hashAlgorithm);
static member CreateComInstanceFrom : string * string * byte[] * System.Configuration.Assemblies.AssemblyHashAlgorithm -> System.Runtime.Remoting.ObjectHandle
Public Shared Function CreateComInstanceFrom (assemblyName As String, typeName As String, hashValue As Byte(), hashAlgorithm As AssemblyHashAlgorithm) As ObjectHandle
Paramètres
- assemblyName
- String
Nom d’un fichier qui contient un assembly où le type nommé typeName
est recherché.
- typeName
- String
Nom du type à créer une instance de.
- hashValue
- Byte[]
Valeur du code de hachage calculé.
- hashAlgorithm
- AssemblyHashAlgorithm
Algorithme de hachage utilisé pour le hachage de fichiers et génération du nom fort.
Retours
Handle qui doit être décompressé pour accéder à l’objet nouvellement créé ou null
pour Nullable<T> instances.
Exceptions
typeName
ou assemblyName
est null
.
assemblyName
est la chaîne vide (« »).
Un assembly ou un module a été chargé deux fois avec deux preuves différentes.
-ou-
assemblyName
est plus long que la longueur maximale définie par le système.
assemblyName
est introuvable, ou le module que vous essayez de charger ne spécifie pas d’extension de nom de fichier.
assemblyName
est trouvé, mais ne peut pas être chargé.
assemblyName
n’est pas un assembly valide.
Une base de code qui ne commence pas par « file:// » a été spécifiée sans la WebPermission
requise.
Impossible de créer une instance via COM.
-ou-
typeName
n’a pas été trouvé dans assemblyName
.
Aucun constructeur correspondant n’a été trouvé.
Impossible de créer une instance d’une classe abstraite.
-ou-
Ce membre a été appelé avec un mécanisme de liaison tardive.
L’appelant ne peut pas fournir d’attributs d’activation pour un objet qui n’hérite pas de MarshalByRefObject.
Remarques
Utilisez la méthode ObjectHandle.Unwrap pour annuler la valeur de retour.
Un attribut System.Runtime.InteropServices.ComVisibleAttribute avec une valeur de true
doit être appliqué explicitement ou par défaut au type COM afin que la méthode CreateComInstanceFrom puisse créer une instance de ce type ; sinon, TypeLoadException est levée.
Pour plus d’informations sur les autres exceptions pouvant être levées par des méthodes appelées, consultez la section Exceptions des méthodes Assembly.LoadFrom et CreateInstance.
Note
À compter de .NET Framework 2.0, cette méthode peut être utilisée pour créer des types non publics si l’appelant a reçu ReflectionPermission avec l’indicateur de ReflectionPermissionFlag.RestrictedMemberAccess et si l’ensemble d’octroi de l’assembly qui contient les types non publics est limité au jeu d’octroi de l’appelant ou à un sous-ensemble de celui-ci. (Consultez considérations relatives à la sécurité pour la réflexion.) Pour utiliser cette fonctionnalité, votre application doit cibler .NET Framework 3.5 ou version ultérieure.