CALLCONV Enumeración

Definición

Identifica la convención de llamada usada por un método descrito en una estructura METHODDATA.

public enum class CALLCONV
public enum CALLCONV
[System.Serializable]
public enum CALLCONV
type CALLCONV = 
[<System.Serializable>]
type CALLCONV = 
Public Enum CALLCONV
Herencia
CALLCONV
Atributos

Campos

CC_CDECL 1

Indica que la convención de llamada de la declaración C (CDECL) se usa para un método.

CC_MACPASCAL 3

Indica que la convención de llamada de Macintosh Pascal (MACPASCAL) se usa para un método.

CC_MAX 9

Indica el final de la enumeración CALLCONV.

CC_MPWCDECL 7

Indica que la convención de llamada CDECL de Macintosh Programmers' Workbench (MPW) se usa para un método.

CC_MPWPASCAL 8

Indica que la convención de llamada PASCAL de Macintosh Programmers' Workbench (MPW) se usa para un método.

CC_MSCPASCAL 2

Indica que la convención de llamada de MSC Pascal (MSCPASCAL) se usa para un método.

CC_PASCAL 2

Indica que la convención de llamada de Pascal se usa para un método.

CC_RESERVED 5

Este valor está reservado para uso futuro.

CC_STDCALL 4

Indica que la convención de llamada estándar (STDCALL) se usa para un método.

CC_SYSCALL 6

Indica que la convención de llamada SYSCALL se usa para un método.

Comentarios

Las convenciones de llamada de esta clase describen cómo las funciones pasan argumentos y valores devueltos. Especifican el orden en el que se configuran los parámetros para las funciones llamadas, donde se almacenan los parámetros (en registros o en memoria) y quién (llamador o función llamada) es responsable de limpiar la pila después de que la función vuelva. Por ejemplo:

  • CC_CDECL usa las convenciones de nomenclatura y llamada del lenguaje C. El autor de la llamada inserta los parámetros en la pila en orden inverso (de derecha a izquierda) y limpia la pila después de que la función vuelva. Esta convención de llamada permite llamar a funciones con varargs, lo que hace que sea adecuado para su uso con métodos que aceptan un número variable de parámetros, como las funciones en tiempo de ejecución de C printf, _printf_l, wprintf, _wprintf_l.

  • CC_PASCAL usa la convención de llamada Pascal. El autor de la llamada inserta los parámetros en la pila en orden de izquierda a derecha. La función llamada limpia la pila antes de devolverla.

  • CC_STDCALL es la convención de llamada estándar para las funciones Win32. Es la convención predeterminada para llamar a funciones no administradas con invocación de plataforma. El autor de la llamada inserta los parámetros en la pila en orden inverso (de derecha a izquierda) y la función llamada limpia la pila antes de devolverla.

  • CC_SYSCALL es similar a CDECL en que los argumentos se insertan de derecha a izquierda. Los registros EAX, ECX y EDX no se conservan.

Estos identificadores de convención de llamada los usa .NET Framework, la plataforma Windows Embedded CE y Automation.

Common Language Runtime produce una excepción cuando un método COM en código nativo devuelve un HRESULT. Para obtener más información, consulta How to: Map HRESULTs and Exceptions.

Se aplica a

Consulte también