共用方式為


CorPinvokeMap Enumeration

指定 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;

Members

Member Description
pmNoMangle 使用指定的每個成員名稱。
pmCharSetMask Reserved.
pmCharSetNotSpec Reserved.
pmCharSetAnsi 將字串封送處理為多位元組位元元字串。
pmCharSetUnicode 將字串封送處理為 Unicode 2 位元組字元。
pmCharSetAuto 自動針對目標作系統適當封送處理字串。 默認值為 Windows 上的 Unicode。
pmBestFitUseAssem Reserved.
pmBestFitEnabled 對 ANSI 字元集中缺少完全相符的 Unicode 字元執行最佳對應。
pmBestFitDisabled 請勿執行 Unicode 字元的最佳對應。 在此情況下,所有無法套用的字元都會由 『?』 取代。
pmBestFitMask Reserved.
pmThrowOnUnmappableCharUseAssem Reserved.
pmThrowOnUnmappableCharEnabled 當 Interop 封送處理器遇到無法套用的字元時,擲回例外狀況。
pmThrowOnUnmappableCharDisabled 當 Interop 封送處理器遇到無法套用的字元時,請勿擲回例外狀況。
pmThrowOnUnmappableCharMask Reserved
pmSupportsLastError 允許被呼叫者先呼叫 Win32 SetLastError 函式,再從屬性化方法傳回。
pmCallConvMask Reserved
pmCallConvWinapi 使用預設平臺呼叫慣例。 例如,在 Windows 上,預設值是 StdCall ,而 Windows CE .NET 則是 Cdecl
pmCallConvCdecl Cdecl使用呼叫慣例。 在此情況下,呼叫端會清除堆疊。 這可讓您使用呼叫函 varargs 式(也就是接受可變參數數目的函式)。
pmCallConvStdcall StdCall使用呼叫慣例。 在此情況下,被呼叫端會清除堆疊。 這是使用平台調用呼叫 Unmanaged 函式的預設慣例。
pmCallConvThiscall ThisCall使用呼叫慣例。 在此情況下,第一個參數是 this 指標,並儲存在緩存器 ECX 中。 其他參數會推送在堆疊上。 呼叫 ThisCall 慣例是用來在從 Unmanaged DLL 導出的類別上呼叫方法。
pmCallConvFastcall Reserved.
pmMaxValue Reserved.

Requirements

平臺: 請參閱 .NET 支援的作系統

Header: CorHdr.h