Métodos de inscrição COM devem ser correspondidos.
TypeName |
ComRegistrationMethodsShouldBeMatched |
CheckId |
CA1410 |
Category (Categoria) |
Microsoft.interoperabilidade |
Quebrando alterar |
Não separável |
Causa
Um tipo declara um método marcado com o System.Runtime.InteropServices.ComRegisterFunctionAttribute atributo mas não declara um método marcado com o System.Runtime.InteropServices.ComUnregisterFunctionAttribute atributo, ou vice-versa.
Descrição da regra
Para clientes COM criar um tipo .NET estrutura, o tipo primeiro deve ser registrado.Se estiver disponível, um método marcado com o ComRegisterFunctionAttribute atributo é chamado durante o processo de inscrição especificado pelo usuário de executar código. Um método correspondente marcados com o ComUnregisterFunctionAttribute atributo é chamado durante o processo de cancelamento de inscrição para reverter as operações do método de inscrição.
Como corrigir violações
Para corrigir uma violação dessa regra adicione o método de cancelamento de inscrição ou inscrição correspondente.
Quando suprimir avisos
Não suprimir um aviso da regra.
Exemplo
O exemplo a seguir mostra um tipo que viola a regra.O código comentado mostra a correção a violação.
Imports System
Imports System.Runtime.InteropServices
<Assembly: ComVisibleAttribute(True)>
Namespace InteroperabilityLibrary
Public Class ClassToRegister
End Class
Public Class ComRegistration
<ComRegisterFunctionAttribute> _
Friend Shared Sub RegisterFunction(typeToRegister As Type)
End Sub
' <ComUnregisterFunctionAttribute> _
' Friend Shared Sub UnregisterFunction(typeToRegister As Type)
' End Sub
End Class
End Namespace
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) {}
}
}
Regras relacionadas
Métodos de inscrição COM devem estar visíveis