Freigeben über


CorPinvokeMap-Enumeration

Gibt Optionen für einen PInvoke-Aufruf an.

typedef enum  CorPinvokeMap {
    
    pmNoMangle          = 0x0001,
    
    pmCharSetMask       = 0x0006,
    pmCharSetNotSpec    = 0x0000,
    pmCharSetAnsi       = 0x0002,
    pmCharSetUnicode    = 0x0004,
    pmCharSetAuto       = 0x0006,
    
    pmBestFitUseAssem   = 0x0000,
    pmBestFitEnabled    = 0x0010,
    pmBestFitDisabled   = 0x0020,
    pmBestFitMask       = 0x0030,
    
    pmThrowOnUnmappableCharUseAssem   = 0x0000,
    pmThrowOnUnmappableCharEnabled    = 0x1000,
    pmThrowOnUnmappableCharDisabled   = 0x2000,
    pmThrowOnUnmappableCharMask       = 0x3000,
    
    pmSupportsLastError = 0x0040, 
    
    pmCallConvMask      = 0x0700,
    pmCallConvWinapi    = 0x0100,
    pmCallConvCdecl     = 0x0200,
    pmCallConvStdcall   = 0x0300,
    pmCallConvThiscall  = 0x0400,
    pmCallConvFastcall  = 0x0500,

    pmMaxValue          = 0xFFFF
    
} CorPinvokeMap;

Member

Member

Beschreibungen

pmNoMangle

Verwenden Sie jeden Membernamen wie angegeben.

pmCharSetMask

Reserviert.

pmCharSetNotSpec

Reserviert.

pmCharSetAnsi

Marshallt Zeichenfolgen als Mehrfachbyte-Zeichenfolgen.

pmCharSetUnicode

Marshallt Zeichenfolgen als 2-Byte-Unicode-Zeichen.

pmCharSetAuto

Marshallt Zeichenfolgen automatisch entsprechend dem Zielbetriebssystem. Unter Windows NT, Windows 2000, Windows XP und der Windows Server 2003-Familie wird als Standardeinstellung Unicode verwendet; unter Windows 98 und Windows ME wird als Standardeinstellung ANSI verwendet.

pmBestFitUseAssem

Reserviert.

pmBestFitEnabled

Führt eine optimale Zuordnung von Unicode-Zeichen aus, für die keine genaue Übereinstimmung im ANSI-Zeichensatz vorhanden ist.

pmBestFitDisabled

Es wird keine optimale Zuordnung von Unicode-Zeichen ausgeführt. In diesem Fall werden alle Zeichen, die nicht zugeordnet werden können, durch '?' ersetzt.

pmBestFitMask

Reserviert.

pmThrowOnUnmappableCharUseAssem

Reserviert.

pmThrowOnUnmappableCharEnabled

Löst eine Ausnahme aus, wenn der Interop-Marshaller ein Zeichen findet, das nicht zugeordnet werden kann.

pmThrowOnUnmappableCharDisabled

Löst keine Ausnahme aus, wenn der Interop-Marshaller ein Zeichen findet, das nicht zugeordnet werden kann.

pmThrowOnUnmappableCharMask

Reserviert.

pmSupportsLastError

Ermöglicht es dem Aufgerufenen, die Win32-Funktion SetLastError vor dem Zurückgeben aus der attributierten Methode aufzurufen.

pmCallConvMask

Reserviert.

pmCallConvWinapi

Verwendet die Standardkonvention für Plattformaufrufe. Unter Windows ist der Standard beispielsweise StdCall, und unter Windows CE.NET ist der Standard Cdecl.

pmCallConvCdecl

Verwendet die Cdecl-Aufrufkonvention. In diesem Fall entleert der Aufrufer den Stapel. Dies aktiviert Aufruffunktionen mit varargs (d. h. Funktionen, die eine variable Anzahl von Parametern akzeptieren).

pmCallConvStdcall

Verwendet die StdCall-Aufrufkonvention. In diesem Fall entleert der Aufgerufene den Stapel. Dies ist die Standardkonvention für das Aufrufen nicht verwalteter Funktionen mit Plattformaufruf.

pmCallConvThiscall

Verwendet die ThisCall-Aufrufkonvention. In diesem Fall ist der erste Parameter der this-Zeiger und wird im Register ECX gespeichert. Weitere Parameter werden in den Stapel verschoben. Die ThisCall-Aufrufkonvention wird zum Aufrufen von Methoden für Klassen verwendet, die aus einer nicht verwalteten DLL exportiert wurden.

pmCallConvFastcall

Reserviert.

pmMaxValue

Reserviert.

Anforderungen

Plattformen: siehe Systemanforderungen für .NET Framework.

Header: CorHdr.h

.NET Framework-Versionen: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

Siehe auch

Weitere Ressourcen

Metadatenenumerationen