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 でのカスタム マーシャラーの使用」を参照してください。
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET