MethodImportAttributes Sabit listesi

Tanım

Yönetilmeyen yöntem içeri aktarma öznitelikleri için bayrakları belirtir.

Bu sabit listesi, üyeleri için bit düzeyinde karşılaştırmayı destekler.

public enum class MethodImportAttributes
[System.Flags]
public enum MethodImportAttributes
[<System.Flags>]
type MethodImportAttributes = 
Public Enum MethodImportAttributes
Devralma
MethodImportAttributes
Öznitelikler

Alanlar

Name Değer Description
None 0

Varsayılan yöntem içeri aktarma özniteliklerini belirtir.

ExactSpelling 1

İçeri aktarılan yöntemi ararken Ortak Dil Çalışma Zamanı'nın karakter kümesine özgü sonekleri olan bir giriş noktası adlarını denememesi gerektiğini belirtir.

CharSetAnsi 2

Dizelerin birden çok baytlık karakter dizeleri olarak sıralandığını belirtir: Windows sistem varsayılan Windows (ANSI) kod sayfası ve Unix üzerinde UTF-8.

CharSetUnicode 4

Dizelerin Unicode 2 bayt karakter dizeleri olarak sıralandığını belirtir.

CharSetAuto 6

Karakter kümesinin otomatik olarak seçildiğini belirtir. Ayrıntılar için bkz. Charsets ve marshaling .

CharSetMask 6

Dize sıralama için kullanılan karakter kümesini belirtir.

BestFitMappingEnable 16

Unicode karakterleri ANSI karakterlerine dönüştürülürken en uygun eşleme davranışının etkinleştirildiğini belirtir.

BestFitMappingDisable 32

Unicode karakterleri ANSI karakterlerine dönüştürülürken en uygun eşleme davranışının devre dışı bırakıldığını belirtir.

BestFitMappingMask 48

Unicode karakterleri ANSI karakterlerine dönüştürürken en uygun eşleme davranışının etkin mi yoksa devre dışı mı olduğunu belirtir.

SetLastError 64

İçeri aktarılan yöntemin döndürmeden önce SetLastError Windows API işlevini çağırdığını belirtir.

CallingConventionWinApi 256

Varsayılan platform çağırma kuralının kullanıldığını belirtir.

CallingConventionCDecl 512

Çağırma kuralının CDecl olduğunu belirtir.

CallingConventionStdCall 768

Çağırma kuralının StdCall olduğunu belirtir.

CallingConventionThisCall 1024

Çağırma kuralının ThisCall olduğunu belirtir.

CallingConventionFastCall 1280

Çağırma kuralının FastCall olduğunu belirtir.

CallingConventionMask 1792

Çağırma kuralını belirtir.

ThrowOnUnmappableCharEnable 4096

Uygulamaz bir Unicode karakteri ANSI karakterine dönüştürüldüğünde bir özel durum oluşturulmalıdır.

ThrowOnUnmappableCharDisable 8192

Eşlenemeyen bir Unicode karakteri ANSI karakterine dönüştürüldüğünde bir özel durum oluşturmaması gerektiğini belirtir.

ThrowOnUnmappableCharMask 12288

Uygulamaz bir Unicode karakteri ANSI karakterine dönüştürüldüğünde bir özel durumun oluşturulup oluşturulmayacağını belirtir.

Açıklamalar

Yöntem içeri aktarma öznitelikleri yapısıyla birlikte MethodImport kullanılır.

Bu sabit listesi değerinin belirli bir bayrağı olup olmadığını denetlemek için bit düzeyinde AND işlemini (& C#'de) kullanarak bu değeri ilgili maske sabitiyle birleştirin ve sonucunu denetlemeniz gereken bayrağın sabitiyle karşılaştırın. Örneğin, CDecl çağrı kuralını denetlemek için aşağıdaki gibi bir kod kullanın:

if((attributes & MethodImportAttributes.CallingConventionMask) == MethodImportAttributes.CallingConventionCDecl)
{
    // The calling convention is CDecl
}

Yönetilmeyen yöntem içeri aktarma ve bu özniteliklerin anlamı hakkında daha fazla bilgi için bkz DllImportAttribute. .

Şunlara uygulanır