Partilhar via


Enumeração CorPinvokeMap

Especifica opções para uma chamada 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;  

Membros

Membro Description
pmNoMangle Utilize cada nome de membro conforme especificado.
pmCharSetMask Reservado
pmCharSetNotSpec Reservado
pmCharSetAnsi Cadeias de carateres de marshal como cadeias de carateres de vários bytes.
pmCharSetUnicode Cadeias de controlo como carateres unicode de 2 bytes.
pmCharSetAuto Organizar automaticamente cadeias de carateres adequadamente para o sistema operativo de destino. A predefinição é Unicode no Windows.
pmBestFitUseAssem Reservado
pmBestFitEnabled Execute o melhor mapeamento de carateres Unicode que não têm uma correspondência exata no conjunto de carateres ANSI.
pmBestFitDisabled Não efetue o melhor mapeamento de carateres Unicode. Neste caso, todos os carateres não aplicáveis serão substituídos por um '?'.
pmBestFitMask Reservado
pmThrowOnUnmappableCharUseAssem Reservado
pmThrowOnUnmappableCharEnabled Adicione uma exceção quando o interop marshaller encontrar um caráter não aplicável.
pmThrowOnUnmappableCharDisabled Não crie uma exceção quando o interop marshaller encontrar um caráter não aplicável.
pmThrowOnUnmappableCharMask Reservado
pmSupportsLastError Permita que o destinatário chame a função Win32 SetLastError antes de regressar do método atribuído.
pmCallConvMask Reservado
pmCallConvWinapi Utilize a convenção de chamadas de plataforma predefinida. Por exemplo, no Windows, a predefinição é StdCall e no Windows CE .NET é Cdecl.
pmCallConvCdecl Utilize a Cdecl convenção de chamadas. Neste caso, o autor da chamada limpa a pilha. Isto permite chamar funções com varargs (ou seja, funções que aceitam um número variável de parâmetros).
pmCallConvStdcall Utilize a StdCall convenção de chamadas. Neste caso, o destinatário da chamada limpa a pilha. Esta é a convenção predefinida para chamar funções não geridas com a invocação da plataforma.
pmCallConvThiscall Utilize a ThisCall convenção de chamadas. Neste caso, o primeiro parâmetro é o this ponteiro e é armazenado no registo ECX. Outros parâmetros são emitidos na pilha. A ThisCall convenção de chamadas é utilizada para chamar métodos em classes exportadas de uma DLL não gerida.
pmCallConvFastcall Reservado
pmMaxValue Reservado

Requisitos

Plataformas: Veja Requisitos de Sistema.

Cabeçalho: CorHdr.h

.NET Framework Versões: Disponível desde 1.0

Ver também