Diagnóstico do SYSLIB para a geração de origem do p/invoke
A tabela a seguir mostra as IDs de diagnóstico para analisadores de geração de origem de invocação de plataforma (p/invoke) no .NET 7 e versões posteriores. SYSLIB1054
alerta automaticamente sobre locais nos quais você pode usar a geração de origem para gerar código de marshalling p/invoke no tempo de compilação. O diagnóstico restante alerta você sobre erros relacionados ao uso do gerador de origem.
ID do diagnóstico | Title | Descrições |
---|---|---|
SYSLIB1050 |
Uso de LibraryImportAttribute inválido. | – O método '{0}' deve ser 'static', 'partial' e não genérico quando marcado com 'LibraryImportAttribute'. A geração de origem P/Invoke ignorará o método '{0}'. – O método '{0}' está contido em um tipo '{1}' que não está marcado como 'partial'. A geração de origem P/Invoke ignorará o método '{0}'. – A configuração de 'StringMarshalling' e 'StringMarshallingCustomType' no método '{0}' é inválida. |
SYSLIB1051 |
O tipo especificado não tem suporte de p/invokes gerados pela origem. | – A origem gerada não manipulará o marshalling do parâmetro '{1}'. – A origem gerada não manipulará o marshalling do valor retornado do método '{1}'. |
SYSLIB1052 |
A configuração especificada não tem suporte de p/invokes gerados pela origem. | – A configuração não tem suporte de P/Invokes gerados pela origem. Se a configuração especificada for necessária, use um DllImport regular.– A configuração especificada para o parâmetro '{1}' não tem suporte de P/Invokes gerados pela origem. – Não há suporte para a configuração especificada para o valor retornado do método '{1}' por P/Invokes gerados pela origem. – O valor especificado para '{1}' não tem suporte de P/Invokes gerados pela origem. – Não há suporte para a configuração de marshaling especificada por P/Invokes gerados pela origem. |
SYSLIB1053 |
Os argumentos LibraryImportAttribute especificados não podem ser encaminhados para DllImportAttribute. | '{0}' não tem equivalente em 'DllImportAtttribute' e não será encaminhado. |
SYSLIB1054 |
Use LibraryImportAttribute em vez de DllImportAttribute para gerar código de marshalling p/invoke no tempo de compilação. | |
SYSLIB1055 |
Uso de CustomMarshallerAttribute inválido. | |
SYSLIB1056 |
O tipo nativo especificado é inválido. | |
SYSLIB1057 |
O tipo de marshaller não tem a forma necessária. | |
SYSLIB1058 |
Uso de NativeMarshallingAttribute inválido. | |
SYSLIB1059 |
O tipo de marshaller não dá suporte ao construtor de alocação. | |
SYSLIB1060 |
O tipo de marshaller especificado é inválido. | |
SYSLIB1061 |
O tipo de marshaller tem assinaturas de método incompatíveis. | |
SYSLIB1062 |
O projeto precisa ser atualizado com <AllowUnsafeBlocks>true</AllowUnsafeBlocks> . |
Para obter mais informações sobre a geração de origem para p/invoke, confira Geração de origem para invocação de plataforma e Tutorial: usar marshallers personalizados em P/Invokes gerados pela origem.