CALLCONV Enumeración

Definición

Identifica la convención de llamada utilizada 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

Nombre Valor Description
CC_CDECL 1

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

CC_MSCPASCAL 2

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

CC_PASCAL 2

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

CC_MACPASCAL 3

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

CC_STDCALL 4

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

CC_RESERVED 5

Este valor está reservado para su uso futuro.

CC_SYSCALL 6

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

CC_MPWCDECL 7

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

CC_MPWPASCAL 8

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

CC_MAX 9

Indica el final de la CALLCONV enumeración.

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 devuelva. 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, vea How to: Map HRESULTs and Exceptions.

Se aplica a

Consulte también