CorPinvokeMap-uppräkning
Anger alternativ för ett PInvoke-anrop.
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;
Medlemmar
Medlem | Description |
---|---|
pmNoMangle |
Använd varje medlemsnamn enligt angivet. |
pmCharSetMask |
Reserverat. |
pmCharSetNotSpec |
Reserverat. |
pmCharSetAnsi |
Konvertera strängar som teckensträngar med flera byte. |
pmCharSetUnicode |
Konvertera strängar som Unicode-tecken med 2 byte. |
pmCharSetAuto |
Konvertera strängar automatiskt på lämpligt sätt för måloperativsystemet. Standardvärdet är Unicode i Windows. |
pmBestFitUseAssem |
Reserverat. |
pmBestFitEnabled |
Utför mappning med bästa passning av Unicode-tecken som saknar en exakt matchning i ANSI-teckenuppsättningen. |
pmBestFitDisabled |
Utför inte mappning av Unicode-tecken på bästa sätt. I det här fallet ersätts alla omappbara tecken med ett '?'. |
pmBestFitMask |
Reserverat. |
pmThrowOnUnmappableCharUseAssem |
Reserverat. |
pmThrowOnUnmappableCharEnabled |
Utlös ett undantag när interop-marshallern påträffar ett ommappbart tecken. |
pmThrowOnUnmappableCharDisabled |
Utlös inte ett undantag när interop-marshallern stöter på ett ommappbart tecken. |
pmThrowOnUnmappableCharMask |
Reserverat |
pmSupportsLastError |
Tillåt att anroparen anropar Win32-funktionen SetLastError innan den returnerar från den attributade metoden. |
pmCallConvMask |
Reserverat |
pmCallConvWinapi |
Använd standardregeln för plattformsanrop. I Windows är StdCall till exempel standardvärdet och på Windows CE .NET är Cdecl det . |
pmCallConvCdecl |
Använd anropskonventionen Cdecl . I det här fallet rensar anroparen stacken. Detta möjliggör anrop av funktioner med varargs (det vill si, funktioner som accepterar ett variabelt antal parametrar). |
pmCallConvStdcall |
Använd anropskonventionen StdCall . I det här fallet rensar anroparen stacken. Detta är standardkonventionen för att anropa ohanterade funktioner med plattformsanrop. |
pmCallConvThiscall |
Använd anropskonventionen ThisCall . I det här fallet är den första parametern pekaren this och lagras i registrera ECX. Andra parametrar push-överförs på stacken. Anropskonventionen ThisCall används för att anropa metoder för klasser som exporteras från en ohanterad DLL. |
pmCallConvFastcall |
Reserverat. |
pmMaxValue |
Reserverat. |
Krav
Plattformar: Se Systemkrav.
Huvudet: CorHdr.h
.NET Framework versioner: Tillgänglig sedan 1.0
Se även
Samarbeta med oss på GitHub
Källan för det här innehållet finns på GitHub, där du även kan skapa och granska ärenden och pull-begäranden. Se vår deltagarguide för mer information.