Sdílet prostřednictvím


CorPinvokeMap – výčet

Určuje možnosti volání PInvoke.

Syntax

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;  

Členové

Člen Description
pmNoMangle Použijte názvy jednotlivých členů tak, jak jsou zadány.
pmCharSetMask Vyhrazeno.
pmCharSetNotSpec Vyhrazeno.
pmCharSetAnsi Zařazování řetězců jako více bajtů znakových řetězců
pmCharSetUnicode Zařazování řetězců jako 2 bajtové znaky Unicode
pmCharSetAuto Automaticky zařadí řetězce odpovídajícím způsobem pro cílový operační systém. Výchozí hodnota je Unicode ve Windows.
pmBestFitUseAssem Vyhrazeno.
pmBestFitEnabled Proveďte nejlepší mapování znaků Unicode, které nemají přesnou shodu ve znakové sadě ANSI.
pmBestFitDisabled Neprovádějte nejlepší mapování znaků Unicode. V tomto případě budou všechny nemapovatelné znaky nahrazeny znakem "?".
pmBestFitMask Vyhrazeno.
pmThrowOnUnmappableCharUseAssem Vyhrazeno.
pmThrowOnUnmappableCharEnabled Vyvolá výjimku, když interop marshaller narazí na nemapovatelný znak.
pmThrowOnUnmappableCharDisabled Nevyvoláte výjimku, pokud zařazovač zprostředkovatele komunikace narazí na nezmapovatelný znak.
pmThrowOnUnmappableCharMask Vyhrazené
pmSupportsLastError Povolte volané volání funkce Win32 SetLastError před návratem z metody s atributem .
pmCallConvMask Vyhrazené
pmCallConvWinapi Použijte výchozí konvenci volání platformy. Například ve Windows je StdCall výchozí hodnota a v systém Windows CE .NET je Cdecl.
pmCallConvCdecl Cdecl Použijte konvenci volání. V takovém případě volající vyčistí zásobník. To umožňuje volání funkcí pomocí varargs (to znamená funkcí, které přijímají proměnný počet parametrů).
pmCallConvStdcall StdCall Použijte konvenci volání. V tomto případě volaný vyčistí zásobník. Toto je výchozí konvence pro volání nespravovaných funkcí s voláním platformy.
pmCallConvThiscall ThisCall Použijte konvenci volání. V tomto případě je prvním parametrem this ukazatel a je uložen v registru ECX. Další parametry se odsílají do zásobníku. Konvence ThisCall volání se používá k volání metod na třídách exportovaných z nespravované knihovny DLL.
pmCallConvFastcall Vyhrazeno.
pmMaxValue Vyhrazeno.

Požadavky

Platformy: Viz Požadavky na systém.

Záhlaví: CorHdr.h

Verze rozhraní .NET Framework: K dispozici od verze 1.0

Viz také