MethodImportAttributes 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
アンマネージ メソッドのインポート属性のフラグを指定します。
この列挙体は、メンバー値のビットごとの組み合わせをサポートしています。
public enum class MethodImportAttributes
[System.Flags]
public enum MethodImportAttributes
[<System.Flags>]
type MethodImportAttributes =
Public Enum MethodImportAttributes
- 継承
- 属性
フィールド
| 名前 | 値 | 説明 |
|---|---|---|
| None | 0 | 既定のメソッド インポート属性を指定します。 |
| ExactSpelling | 1 | 共通言語ランタイムが、インポートされたメソッドを検索するときに、文字セット固有のサフィックスを持つエントリ ポイント名を試行しないように指定します。 |
| CharSetAnsi | 2 | 文字列を複数バイトの文字列としてマーシャリングすることを指定します。システムの既定のWindows (ANSI) コード ページ (Windows)、Unix の場合は UTF-8 です。 |
| CharSetUnicode | 4 | 文字列を Unicode 2 バイト文字列としてマーシャリングすることを指定します。 |
| CharSetAuto | 6 | 文字セットを自動的に選択することを指定します。 詳細については、「 文字セットとマーシャリング 」を参照してください。 |
| CharSetMask | 6 | 文字列マーシャリングに使用する文字セットを指定します。 |
| BestFitMappingEnable | 16 | Unicode 文字を ANSI 文字に変換するときの最適なマッピング動作が有効であることを指定します。 |
| BestFitMappingDisable | 32 | Unicode 文字を ANSI 文字に変換するときの最適なマッピング動作を無効にすることを指定します。 |
| BestFitMappingMask | 48 | Unicode 文字を ANSI 文字に変換するときの最適なマッピング動作を有効または無効にするかどうかを指定します。 |
| SetLastError | 64 | 返す前に、インポートされたメソッドが SetLastError Windows API 関数を呼び出すように指定します。 |
| CallingConventionWinApi | 256 | 既定のプラットフォーム呼び出し規則が使用されることを指定します。 |
| CallingConventionCDecl | 512 | 呼び出し規約が CDecl であることを指定します。 |
| CallingConventionStdCall | 768 | 呼び出し規則が StdCall であることを指定します。 |
| CallingConventionThisCall | 1024 | 呼び出し規約が ThisCall であることを指定します。 |
| CallingConventionFastCall | 1280 | 呼び出し規約が FastCall であることを指定します。 |
| CallingConventionMask | 1792 | 呼び出し規約を指定します。 |
| ThrowOnUnmappableCharEnable | 4096 | 適用できない Unicode 文字を ANSI 文字に変換するときに例外をスローすることを指定します。 |
| ThrowOnUnmappableCharDisable | 8192 | 適用できない Unicode 文字が ANSI 文字に変換されるときに例外をスローしないように指定します。 |
| ThrowOnUnmappableCharMask | 12288 | 適用できない Unicode 文字を ANSI 文字に変換するときに例外をスローするかどうかを指定します。 |
注釈
メソッドのインポート属性は、 MethodImport 構造体と共に使用されます。
この列挙体の値に特定のフラグがあるかどうかを確認するには、ビットごとの AND 演算 (C# で& ) を使用してその値を対応するマスク定数と結合し、その結果を確認する必要があるフラグの定数と比較します。 たとえば、CDecl 呼び出し規則を確認するには、次のようなコードを使用します。
if((attributes & MethodImportAttributes.CallingConventionMask) == MethodImportAttributes.CallingConventionCDecl)
{
// The calling convention is CDecl
}
アンマネージ メソッドのインポートとこれらの属性の意味の詳細については、 DllImportAttributeを参照してください。