次の方法で共有


p/invoke ソース生成のための SYSLIB 診断

次の表は、.NET 7 以降のバージョンのプラットフォーム呼び出し (p/invoke) ソース生成アナライザーの診断 ID を示しています。 SYSLIB1054 は、コンパイル時にソース生成を使用して p/invoke マーシャリング コードを生成できる場所について自動的に警告します。 残りの診断は、ソース ジェネレーターの使用方法に関連するエラーについて警告します。

診断 ID タイトル 説明
SYSLIB1050 LibraryImportAttribute の使用が無効です。 - メソッド '{0}' は、'LibraryImportAttribute' でマークされている場合、'static'、'partial'、かつ非ジェネリックである必要があります。 P/Invoke ソース生成は、メソッド '{0}' を無視します。
- メソッド '{0}' は、'partial' とマークされていない型 '{1}' に含まれています。 P/Invoke ソース生成は、メソッド '{0}' を無視します。
- メソッド '{0}' の 'StringMarshalling' と 'StringMarshallingCustomType' の構成が無効です。
SYSLIB1051 指定された型は、ソース生成された p/invoke ではサポートされていません。 - 生成されたソースはパラメーター '{1}' のマーシャリングを処理しません。
- 生成されたソースは、メソッド '{1}' の戻り値のマーシャリングを処理しません。
SYSLIB1052 指定された構成は、ソース生成された p/invoke ではサポートされていません。 - この構成は、ソース生成された P/Invoke ではサポートされていません。 指定された構成が必要な場合は、代わりに標準の DllImport を使用します。
- パラメーター '{1}' に対して指定された構成は、ソース生成された P/Invoke ではサポートされていません。
- メソッド '{1}' の戻り値に対して指定された構成は、ソース生成された P/Invoke ではサポートされていません。
- '{1}' に対して指定された値は、ソース生成された P/Invoke ではサポートされていません。
- 指定されたマーシャリング構成は、ソース生成された P/Invoke ではサポートされていません。
SYSLIB1053 指定された LibraryImportAttribute 引数を DllImportAttribute に転送することができません。 '{0}' は 'DllImportAttribute' に相当するものがなく、転送されません。
SYSLIB1054 DllImportAttribute の代わりに LibraryImportAttribute を使用して、コンパイル時に p/invoke マーシャリング コードを生成します。
SYSLIB1055 CustomMarshallerAttribute の使用が無効です。
SYSLIB1056 指定されたネイティブ型は無効です。
SYSLIB1057 マーシャラー型に必要なシェイプがありません。
SYSLIB1058 NativeMarshallingAttribute の使用が無効です。
SYSLIB1059 マーシャラー型ではコンストラクターの割り当てがサポートされていません。
SYSLIB1060 指定されたマーシャラー型は無効です。
SYSLIB1061 マーシャラー型に互換性のないメソッド シグネチャがあります。
SYSLIB1062 プロジェクトは <AllowUnsafeBlocks>true</AllowUnsafeBlocks> で更新する必要があります。

p/invoke に対するソース生成の詳細については、「プラットフォーム呼び出しのためのソース生成」と「チュートリアル: ソース生成された P/Invoke でのカスタム マーシャラーの使用」を参照してください。

関連項目