CorPinvokeMap — Wyliczenie
Określa opcje wywołania PInvoke.
Składnia
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;
Elementy członkowskie
Członek | Opis |
---|---|
pmNoMangle |
Użyj nazwy każdego elementu członkowskiego zgodnie z określoną nazwą. |
pmCharSetMask |
Zarezerwowany. |
pmCharSetNotSpec |
Zarezerwowany. |
pmCharSetAnsi |
Przeprowadzanie marshalingu ciągów jako ciągów znaków wielobajtowych. |
pmCharSetUnicode |
Marshaling strings as Unicode 2-byte znaków. |
pmCharSetAuto |
Automatycznie marshaluje ciągi odpowiednio dla docelowego systemu operacyjnego. Wartość domyślna to Unicode w systemie Windows. |
pmBestFitUseAssem |
Zarezerwowany. |
pmBestFitEnabled |
Wykonaj najlepsze mapowanie znaków Unicode, które nie mają dokładnego dopasowania w zestawie znaków ANSI. |
pmBestFitDisabled |
Nie wykonuj najlepszego mapowania znaków Unicode. W takim przypadku wszystkie niezastosowane znaki zostaną zastąpione znakiem "?". |
pmBestFitMask |
Zarezerwowany. |
pmThrowOnUnmappableCharUseAssem |
Zarezerwowany. |
pmThrowOnUnmappableCharEnabled |
Zgłaszanie wyjątku, gdy marshaller międzyoperacyjny napotka nieaplikowalny znak. |
pmThrowOnUnmappableCharDisabled |
Nie zgłaszaj wyjątku, gdy marshaller międzyoperacyjny napotka nieaplikowalny znak. |
pmThrowOnUnmappableCharMask |
Zarezerwowany |
pmSupportsLastError |
Zezwalaj na wywoływanie funkcji Win32 SetLastError przed powrotem z metody przypisanej. |
pmCallConvMask |
Zarezerwowany |
pmCallConvWinapi |
Użyj domyślnej konwencji wywoływania platformy. Na przykład w systemie Windows wartość domyślna to StdCall i na Windows CE .NET jest to Cdecl . |
pmCallConvCdecl |
Cdecl Użyj konwencji wywoływania. W takim przypadku obiekt wywołujący czyści stos. Umożliwia to wywoływanie funkcji za pomocą varargs funkcji (czyli funkcji, które akceptują zmienną liczbę parametrów). |
pmCallConvStdcall |
StdCall Użyj konwencji wywoływania. W takim przypadku obiekt wywoływany czyści stos. Jest to domyślna konwencja wywoływania niezarządzanych funkcji z wywołaniem platformy. |
pmCallConvThiscall |
ThisCall Użyj konwencji wywoływania. W tym przypadku pierwszy parametr jest wskaźnikiem this i jest przechowywany w rejestrze ECX. Inne parametry są wypychane na stos. Konwencja ThisCall wywoływania służy do wywoływania metod dla klas wyeksportowanych z niezarządzanej biblioteki DLL. |
pmCallConvFastcall |
Zarezerwowany. |
pmMaxValue |
Zarezerwowany. |
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorHdr.h
wersje .NET Framework: dostępne od wersji 1.0
Zobacz też
Współpracuj z nami w serwisie GitHub
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.