共用方式為


CorPinvokeMap 列舉

指定 PInvoke 呼叫的選項。

語法

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 描述
pmNoMangle 依指定使用每個成員名稱。
pmCharSetMask 保留的。
pmCharSetNotSpec 保留的。
pmCharSetAnsi 將字串當做多位元組字元字串來封送處理。
pmCharSetUnicode 封送處理字串為 Unicode 2 個位元組字元。
pmCharSetAuto 自動為目標作業系統妥善地封送處理字串。 預設值為 Windows 上的 Unicode。
pmBestFitUseAssem 保留的。
pmBestFitEnabled 針對在 ANSI 字元集中缺少完全相符的 Unicode 字元,執行最合適的對應。
pmBestFitDisabled 請勿執行 Unicode 字元的自動調整對應。 在這個情況下,所有無法對應的字元都會由「?」取代。
pmBestFitMask 保留的。
pmThrowOnUnmappableCharUseAssem 保留的。
pmThrowOnUnmappableCharEnabled 當 Interop 封送處理器遇到無法對應的字元時,擲回例外狀況。
pmThrowOnUnmappableCharDisabled 當 Interop 封送處理器遇到無法對應的字元時,請勿擲回例外狀況。
pmThrowOnUnmappableCharMask 保留
pmSupportsLastError 在屬性方法傳回之前,允許被呼叫者呼叫 Win32 SetLastError 函式。
pmCallConvMask 保留
pmCallConvWinapi 使用預設平台呼叫慣例。 例如,在 Windows 上,預設值為 StdCall ,且在 Windows CE .NET 上為 Cdecl
pmCallConvCdecl 使用 Cdecl 呼叫慣例。 在這個情況下,呼叫者會清除堆疊。 這可讓您使用 varargs 啟用呼叫函式 (也就是接受可變數目參數的函式)。
pmCallConvStdcall 使用 StdCall 呼叫慣例。 在這個情況下,被呼叫者會清除堆疊。 這是針對用平台叫用呼叫 Unmanaged 函式的預設慣例。
pmCallConvThiscall 使用 ThisCall 呼叫慣例。 在這個情況下,第一個參數為 this 指標且儲存在暫存器 ECX 中。 其他參數會被推入至堆疊。 ThisCall 呼叫慣例是用來呼叫從未受控 DLL 所匯出類別上的方法。
pmCallConvFastcall 保留的。
pmMaxValue 保留的。

規格需求

平台:請參閱系統需求

標頭:CorHdr.h

.NET Framework版本:自 1.0 起提供

另請參閱