Diagnostics SYSLIB pour la génération de source p/invoke
Le tableau suivant montre les ID de diagnostic pour les analyseurs de génération de source platform-invoke (p/invoke) dans .NET 7 et versions ultérieures. SYSLIB1054
vous avertit automatiquement des emplacements où vous pouvez utiliser la génération de source pour générer du code de marshaling p/invoke au moment de la compilation. Les diagnostics restants vous alertent en cas d’erreurs liées à l’utilisation du générateur de source.
ID de diagnostic | Intitulé | Descriptions |
---|---|---|
SYSLIB1050 |
Utilisation non valide de LibraryImportAttribute. | - La méthode « {0} » doit être « static », « partial » et non générique lorsqu’elle est marquée comme « LibraryImportAttribute ». La génération de source P/Invoke ignorera la méthode « {0} ». - La méthode « {0} » est contenue dans un type « {1} » qui n’est pas marqué comme « partial ». La génération de source P/Invoke ignorera la méthode « {0} ». - La configuration de « StringMarshalling » et de « StringMarshallingCustomType » sur la méthode « {0} » n’est pas valide. |
SYSLIB1051 |
Le type spécifié n’est pas pris en charge par les P/Invokes générés par la source. | - La source générée ne gérera pas le marshaling du paramètre « {1} ». - La source générée ne gérera pas le marshaling de la valeur renvoyée de la méthode « {1} ». |
SYSLIB1052 |
La configuration spécifiée n’est pas prise en charge par les P/Invokes générés par la source. | - La configuration n’est pas prise en charge par les P/Invokes générés par la source. Si la configuration spécifiée est requise, utilisez un DllImport standard à la place.- La configuration spécifiée pour le paramètre « {1} » n’est pas prise en charge par les P/Invokes générés par la source. - La configuration spécifiée pour la valeur renvoyée de la méthode « {1} » n’est pas prise en charge par les P/Invokes générés par la source. - La valeur spécifiée pour « {1} » n’est pas prise en charge par les P/Invokes générés par la source. - La configuration de marshaling spécifiée n’est pas prise en charge par les P/Invokes générés par la source. |
SYSLIB1053 |
Les LibraryImportAttribute arguments spécifiés ne peuvent pas être transférés à DllImportAttribute. | « {0} » n’a pas d’équivalent dans « DllImportAtttribute » et ne sera pas transféré. |
SYSLIB1054 |
Utilisez LibraryImportAttribute au lieu de DllImportAttribute pour générer du code de marshalling p/invoke au moment de la compilation. | |
SYSLIB1055 |
Utilisation non valide de CustomMarshallerAttribute. | |
SYSLIB1056 |
Le type natif spécifié est non valide. | |
SYSLIB1057 |
Le type Marshaller n’a pas la forme requise. | |
SYSLIB1058 |
Utilisation non valide de NativeMarshallingAttribute. | |
SYSLIB1059 |
Le type Marshaller ne prend pas en charge un constructeur d’allocation. | |
SYSLIB1060 |
Le type de marshaleur spécifié n’est pas valide. | |
SYSLIB1061 |
Le type Marshaller a des signatures de méthode incompatibles. | |
SYSLIB1062 |
Le projet doit être mis à jour avec <AllowUnsafeBlocks>true</AllowUnsafeBlocks> . |
Pour plus d’informations sur la génération de source pour p/invoke, consultez Génération de source pour les appels de plateforme et Tutoriel : Utiliser des marshaleurs personnalisés dans les P/Invokes générés par la source.
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