Partilhar via


'sistema.tempo de execução.InteropServices.DllImportAttribute' não pode ser aplicado a um método é genérica ou aninhados em um tipo genérico

Um procedimento é declarado com a DllImportAttribute, mas o procedimento é genérico ou ele está contido em uma classe genérica ou estrutura.

O Common Language Runtime (CLR) reconhece esse atributo e sua propriedade EntryPoint como designar um procedimento de substituição definido em uma não gerenciado de vínculo dinâmico biblioteca (DLL) fora do .NET Framework.Quando o código chama o procedimento ao qual o DllImportAttribute é aplicado, o Common Language Runtime chama o procedimento não gerenciado designado em vez disso.

Porque não gerenciadas plataformas fora do .NET Framework não reconhecem tipos genéricos, você não pode interoperar com eles usando tipos genéricos.

ID de erro: BC31526

Para corrigir este erro

  • Se o procedimento nem seu recipiente precisa ser genéricos, remova as Of cláusulas para que eles fiquem não genéricos.

  • Se o procedimento ou seu recipiente precisa ser genéricos, remova a DllImportAttribute a partir da declaração deste procedimento.

Consulte também

Conceitos

Tipos genéricos no Visual Basic

Referência

DllImportAttribute