Megosztás a következőn keresztül:


SYSLIB-diagnosztikák a p/invoke forrásgeneráláshoz

Az alábbi táblázat a platformhívási (p/invoke) forrásgenerációs elemzők diagnosztikai azonosítóit mutatja be a .NET 7 és újabb verziókban. SYSLIB1054 automatikusan riasztást küld azokra a helyekre, ahol a forrásgenerálással létrehozhat p/invoke rendezési kódot fordításkor. A fennmaradó diagnosztikák a forrásgenerátor használatával kapcsolatos hibákra figyelmeztetnek.

Diagnosztikai azonosító Cím Leírások
SYSLIB1050 Érvénytelen LibraryImportAttribute használat. - A ""{0} metódusnak "statikus", "részleges" és nem általánosnak kell lennie, ha a "LibraryImportAttribute" jelöléssel van megjelölve. A P/Invoke source generation metódus figyelmen kívül hagyja a ""{0} metódust.
- A ""{0} metódus olyan ""{1} típusban található, amely nem "részleges" jelöléssel rendelkezik. A P/Invoke source generation metódus figyelmen kívül hagyja a ""{0} metódust.
- A "StringMarshalling" és a "StringMarshallingCustomType" konfigurációja a "{0}" metóduson érvénytelen.
SYSLIB1051 A megadott típust a forrás által létrehozott p/invokes nem támogatja. - A létrehozott forrás nem kezeli a ""{1} paraméter rendezését.
- A létrehozott forrás nem kezeli a ""{1} metódus visszatérési értékének rendezését.
SYSLIB1052 A megadott konfigurációt a forrás által létrehozott p/invokes nem támogatja. – A konfigurációt a forrás által létrehozott P/Invokes nem támogatja. Ha a megadott konfigurációra van szükség, használjon inkább egy normált DllImport .
- A forrás által létrehozott P/Invokes nem támogatja a "{1}" paraméter megadott konfigurációját.
– A forrás által létrehozott P/Invokes nem támogatja a "{1}" metódus visszatérési értékének megadott konfigurációját.
– A forrás által létrehozott P/Invokes nem támogatja a megadott értéket a "{1}" értékhez.
– A megadott rendezési konfigurációt a forrás által létrehozott P/Invokes nem támogatja.
SYSLIB1053 A megadott LibraryImportAttribute argumentumok nem továbbíthatók a következőre DllImportAttribute: . A "{0}" nem rendelkezik a DllImportAttribute fájlban, és nem lesz továbbítva.
SYSLIB1054 Ahelyett LibraryImportAttributeDllImportAttribute , hogy fordításkor p/invoke rendezési kódot hoz létre.
SYSLIB1055 Érvénytelen CustomMarshallerAttribute használat.
SYSLIB1056 A megadott natív típus érvénytelen.
SYSLIB1057 A rendező típusa nem rendelkezik a szükséges alakzatot.
SYSLIB1058 Érvénytelen NativeMarshallingAttribute használat.
SYSLIB1059 A rendező típusa nem támogatja a kiosztó konstruktort.
SYSLIB1060 A megadott rendezőtípus érvénytelen.
SYSLIB1061 A rendező típusa nem kompatibilis metódus-aláírásokkal rendelkezik.
SYSLIB1062 A projektet frissíteni kell a következővel <AllowUnsafeBlocks>true</AllowUnsafeBlocks>: .

A p/invoke forrásgenerálásáról további információt a Platformhívások forrásgenerációja és az oktatóanyag: Egyéni rendezők használata a forrás által létrehozott P/Invokes szolgáltatásban című témakörben talál.

Lásd még