Diagnostyka SYSLIB dla generowania źródła p/invoke
W poniższej tabeli przedstawiono identyfikatory diagnostyczne analizatorów generowania źródła (p/invoke) platformy (p/invoke) na platformie .NET 7 i nowszych wersjach. SYSLIB1054
automatycznie wysyła alerty do miejsc, w których można użyć generowania źródła do generowania kodu marshalling p/invoke w czasie kompilacji. Pozostała diagnostyka ostrzega o błędach związanych z użyciem generatora źródłowego.
Identyfikator diagnostyczny | Tytuł | Opisy |
---|---|---|
SYSLIB1050 |
Nieprawidłowe LibraryImportAttribute użycie. | - Metoda "{0}" powinna mieć wartość "static", "partial" i non-generic, gdy jest oznaczona znakiem "LibraryImportAttribute". Generowanie źródła P/Invoke zignoruje metodę "{0}". - Metoda "{0}" jest zawarta w typie "{1}", który nie jest oznaczony jako "częściowy". Generowanie źródła P/Invoke zignoruje metodę "{0}". - Konfiguracja metody "StringMarshalling" i "StringMarshallingCustomType" w metodzie "{0}" jest nieprawidłowa. |
SYSLIB1051 |
Określony typ nie jest obsługiwany przez wywołania p/invoke wygenerowane przez źródło. | - Wygenerowane źródło nie będzie obsługiwać marshalling parametru "{1}". - Wygenerowane źródło nie będzie obsługiwać marshalling wartości zwracanej metody "{1}". |
SYSLIB1052 |
Określona konfiguracja nie jest obsługiwana przez wywołania p/invoke wygenerowane przez źródło. | — Konfiguracja nie jest obsługiwana przez wygenerowane przez źródło wywołania P/Invoke. Jeśli określona konfiguracja jest wymagana, należy zamiast tego użyć zwykłej DllImport .- Określona konfiguracja parametru "{1}" nie jest obsługiwana przez wygenerowane przez źródło wywołania P/Invoke. - Określona konfiguracja dla zwracanej wartości metody "{1}" nie jest obsługiwana przez generowane źródło operacje P/Invoke. - Określona wartość elementu "{1}" nie jest obsługiwana przez wygenerowane przez źródło wywołania P/Invoke. — Określona konfiguracja marshallingu nie jest obsługiwana przez wygenerowane przez źródło wywołania P/Invoke. |
SYSLIB1053 |
Nie można przekazać określonych LibraryImportAttribute argumentów do DllImportAttribute. | Element "{0}" nie ma odpowiednika w elemencie "DllImportAttribute" i nie zostanie przekazany. |
SYSLIB1054 |
Użyj LibraryImportAttribute polecenia DllImportAttribute zamiast, aby wygenerować kod marshalling p/invoke w czasie kompilacji. | |
SYSLIB1055 |
Nieprawidłowe CustomMarshallerAttribute użycie. | |
SYSLIB1056 |
Określony typ macierzysty jest nieprawidłowy. | |
SYSLIB1057 |
Typ marshallera nie ma wymaganego kształtu. | |
SYSLIB1058 |
Nieprawidłowe NativeMarshallingAttribute użycie. | |
SYSLIB1059 |
Typ marshallera nie obsługuje przydzielania konstruktora. | |
SYSLIB1060 |
Określony typ marshallera jest nieprawidłowy. | |
SYSLIB1061 |
Typ marshaller ma niezgodne sygnatury metody. | |
SYSLIB1062 |
Projekt musi zostać zaktualizowany przy użyciu <AllowUnsafeBlocks>true</AllowUnsafeBlocks> polecenia . |
Aby uzyskać więcej informacji na temat generowania źródła dla wywołań p/invoke, zobacz Generowanie źródła dla wywołań platformy i Samouczek: używanie niestandardowych marshallerów w generowanych źródłach wywołań P/Invoke.