CA1410 : Les méthodes d'inscription COM doivent être mises en correspondance
Élément | Valeur |
---|---|
ID de la règle | CA1410 |
Category | Microsoft.Interoperability |
Modification avec rupture | Sans rupture |
Cause
Un type déclare une méthode marquée avec l’attribut System.Runtime.InteropServices.ComRegisterFunctionAttribute, mais ne déclare pas une méthode marquée avec l’attribut System.Runtime.InteropServices.ComUnregisterFunctionAttribute, ou inversement.
Description de la règle
Pour que les clients COM (Component Object Model) créent un type .NET, le type doit d’abord être inscrit. Si elle est disponible, une méthode marquée avec l’attribut ComRegisterFunctionAttribute est appelée pendant le processus d’inscription pour exécuter le code spécifié par l’utilisateur. Une méthode correspondante marquée avec l’attribut ComUnregisterFunctionAttribute est appelée pendant le processus de désinscription pour inverser les opérations de la méthode d’inscription.
Comment corriger les violations
Pour corriger une infraction à cette règle, ajoutez la méthode d’inscription ou de désinscription correspondante.
Quand supprimer les avertissements
Ne supprimez aucun avertissement de cette règle.
Exemple
L’exemple suivant montre un type qui enfreint la règle. Le code commenté montre le correctif pour l’infraction.
using System;
using System.Runtime.InteropServices;
[assembly: ComVisible(true)]
namespace InteroperabilityLibrary
{
public class ClassToRegister
{
}
public class ComRegistration
{
[ComRegisterFunction]
internal static void RegisterFunction(Type typeToRegister) {}
// [ComUnregisterFunction]
// internal static void UnregisterFunction(Type typeToRegister) {}
}
}
Règles associées
CA1411 : Les méthodes d'inscription COM ne doivent pas être visibles
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour