Diagnostik SYSLIB untuk pembuatan sumber p/invoke

Tabel berikut menunjukkan ID diagnostik untuk penganalisis pembuatan sumber platform-invoke (p/invoke) di .NET 7 dan versi yang lebih baru. SYSLIB1054 secara otomatis memperingatkan Anda ke tempat-tempat yang dapat Anda gunakan pembuatan sumber untuk menghasilkan kode marshalling p/invoke pada waktu kompilasi. Diagnostik yang tersisa memberi tahu Anda tentang kesalahan yang terkait dengan penggunaan generator sumber.

ID diagnostik Judul Deskripsi
SYSLIB1050 Penggunaan tidak valid LibraryImportAttribute . - Metode '{0}' harus 'statis', 'parsial', dan non-generik ketika ditandai dengan 'LibraryImportAttribute'. Pembuatan sumber P/Invoke akan mengabaikan metode '{0}'.
- Metode '{0}' terkandung dalam jenis '{1}' yang tidak ditandai 'parsial'. Pembuatan sumber P/Invoke akan mengabaikan metode '{0}'.
- Konfigurasi 'StringMarshalling' dan 'StringMarshallingCustomType' pada metode '{0}' tidak valid.
SYSLIB1051 Jenis yang ditentukan tidak didukung oleh p/invokes yang dihasilkan sumber. - Sumber yang dihasilkan tidak akan menangani marshalling parameter '{1}'.
- Sumber yang dihasilkan tidak akan menangani marsekal nilai pengembalian metode '{1}'.
SYSLIB1052 Konfigurasi yang ditentukan tidak didukung oleh p/invokes yang dihasilkan sumber. - Konfigurasi tidak didukung oleh P/Invokes yang dihasilkan sumber. Jika konfigurasi yang ditentukan diperlukan, gunakan reguler DllImport sebagai gantinya.
- Konfigurasi yang ditentukan untuk parameter '{1}' tidak didukung oleh P/Invokes yang dihasilkan sumber.
- Konfigurasi yang ditentukan untuk nilai pengembalian metode '{1}' tidak didukung oleh P/Invokes yang dihasilkan sumber.
- Nilai yang ditentukan untuk '{1}' tidak didukung oleh P/Invokes yang dihasilkan sumber.
- Konfigurasi marshalling yang ditentukan tidak didukung oleh P/Invokes yang dihasilkan sumber.
SYSLIB1053 Argumen yang ditentukan LibraryImportAttribute tidak dapat diteruskan ke DllImportAttribute. '{0}' tidak setara dalam 'DllImportAttribute' dan tidak akan diteruskan.
SYSLIB1054 Gunakan LibraryImportAttribute alih-alih DllImportAttribute untuk menghasilkan kode marshalling p/invoke pada waktu kompilasi.
SYSLIB1055 Penggunaan tidak valid CustomMarshallerAttribute .
SYSLIB1056 Jenis asli yang ditentukan tidak valid.
SYSLIB1057 Tipe marshaller tidak memiliki bentuk yang diperlukan.
SYSLIB1058 Penggunaan tidak valid NativeMarshallingAttribute .
SYSLIB1059 Jenis marshaller tidak mendukung konstruktor alokasi.
SYSLIB1060 Jenis marshaller yang ditentukan tidak valid.
SYSLIB1061 Jenis marshaller memiliki tanda tangan metode yang tidak kompatibel.
SYSLIB1062 Proyek harus diperbarui dengan <AllowUnsafeBlocks>true</AllowUnsafeBlocks>.

Untuk informasi selengkapnya tentang pembuatan sumber untuk p/invoke, lihat Pembuatan sumber untuk pemanggilan platform dan Tutorial: Menggunakan marshaller kustom dalam P/Invokes yang dihasilkan sumber.

Lihat juga