ComRegisterFunctionAttribute Classe

Définition

Spécifie la méthode à appeler lorsque vous inscrivez un assembly à utiliser à partir de COM ; cela permet l’exécution de code écrit par l’utilisateur pendant le processus d’inscription.

public ref class ComRegisterFunctionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)]
public sealed class ComRegisterFunctionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ComRegisterFunctionAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)>]
type ComRegisterFunctionAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ComRegisterFunctionAttribute = class
    inherit Attribute
Public NotInheritable Class ComRegisterFunctionAttribute
Inherits Attribute
Héritage
ComRegisterFunctionAttribute
Attributs

Exemples

L’exemple suivant montre comment appliquer ComRegisterFunctionAttribute et ComUnregisterFunctionAttribute à des méthodes avec la signature appropriée.

using namespace System;
using namespace System::Runtime::InteropServices;
public ref class MyClassThatNeedsToRegister
{
public:

   [ComRegisterFunctionAttribute]
   static void RegisterFunction( Type^ t )
   {
      
      //Insert code here.
   }


   [ComUnregisterFunctionAttribute]
   static void UnregisterFunction( Type^ t )
   {
      
      //Insert code here.
   }

};
using System;
using System.Runtime.InteropServices;

public class MyClassThatNeedsToRegister
{
   [ComRegisterFunctionAttribute]
   public static void RegisterFunction(Type t)
   {
      //Insert code here.
   }

   [ComUnregisterFunctionAttribute]
   public static void UnregisterFunction(Type t)
   {
      //Insert code here.
   }
}
Imports System.Runtime.InteropServices

Public Class MyClassThatNeedsToRegister
    
    <ComRegisterFunctionAttribute()> Public Shared Sub _
      RegisterFunction(t As Type)
        'Insert code here.
    End Sub
    
    <ComUnregisterFunctionAttribute()> Public Shared Sub _
      UnregisterFunction(t As Type)
        'Insert code here.
    End Sub
End Class

Remarques

Vous pouvez appliquer cet attribut aux méthodes.

ComRegisterFunctionAttribute vous permet d’ajouter du code d’inscription arbitraire pour répondre aux exigences des clients COM. Par exemple, vous pouvez mettre à jour le Registre à l’aide de fonctions d’inscription à partir de l’espace de noms Microsoft.Win32. Si vous fournissez une méthode d’inscription, vous devez également appliquer System.Runtime.InteropServices.ComUnregisterFunctionAttribute une méthode de non-inscription, qui inverse les opérations effectuées dans la méthode d’inscription.

.NET Framework : Le common language runtime appelle la méthode avec cet attribut lorsque son assembly conteneur est inscrit (directement ou indirectement) auprès de l’outil Regasm.exe (Inscription d’assembly) ou via la méthode RegistrationServices.RegisterAssembly.

.NET Core : Le Common Language Runtime appelle la méthode avec cet attribut lorsque son hôte COM contenant est inscrit via l'outil RegSvr32.exe.

Cet attribut ne peut être appliqué qu’aux méthodes qui ont les caractéristiques suivantes :

  • Étendue : tout (public, privé, etc.).

  • Type : static.

  • Paramètres : accepte un seul Type paramètre ou un String type de paramètre.

  • Type de retour : void.

Constructeurs

Nom Description
ComRegisterFunctionAttribute()

Initialise une nouvelle instance de la classe ComRegisterFunctionAttribute.

Propriétés

Nom Description
TypeId

En cas d’implémentation dans une classe dérivée, obtient un identificateur unique pour cette Attribute.

(Hérité de Attribute)

Méthodes

Nom Description
Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
GetHashCode()

Retourne le code de hachage pour cette instance.

(Hérité de Attribute)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut de la classe dérivée.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l’objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

Nom Description
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type d’un objet, qui peuvent être utilisées pour obtenir les informations de type d’une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l’accès aux propriétés et méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à

Voir aussi