Partilhar via


<NomeDoMembro> CLS-não compatível não é permitido em uma interface CLS-compatível

Uma propriedade, procedimento ou evento em uma interface está marcado como <CLSCompliant(True)> quando a própria interface está marcada como <CLSCompliant(False)> ou não está marcada.

Para uma interface ser compatível com o CLS (Common Language Specification) (CLS), todos os seus membros devem ser compatíveis.

Quando você aplica o CLSCompliantAttribute a um elemento de programação, você define o parâmetro isCompliant do atributo para True ou False para indicar compatibilidade ou incompatibilidade.Não há padrão para este parâmetro, e você deve fornecer um valor.

Se você não aplicar o CLSCompliantAttribute a um elemento, ele vai ser considerado incompatível.

Por padrão, essa é uma mensagem de aviso.Para informações sobre como ocultar avisos ou tratar avisos como erros, consulte Configurando Avisos (Warnings) no Visual Basic.

ID de erro: BC40033

Para corrigir este erro

  • Se você necessita de compatibilidade CLS e tem controle sobre o código-fonte da interface, marque a interface como <CLSCompliant(True)> se todos os seus membros forem compatíveis.

  • Se você necessita de compatibilidade com CLS e não tem controle sobre o código-fonte da interface, ou se ela não for compatível, defina este membro numa classe diferente.

  • Se você precisa que esse membro permaneça em sua interface atual, remova sua definição de CLSCompliantAttribute ou marque-a como <CLSCompliant(False)>.

Consulte também

Conceitos

Escrevendo código compatível com CLS

Referência

Declaração Interface (Visual Basic)