CALLCONV Énumération

Définition

Identifie la convention d’appel utilisée par une méthode décrite dans une structure METHODDATA.

public enum class CALLCONV
public enum CALLCONV
[System.Serializable]
public enum CALLCONV
type CALLCONV = 
[<System.Serializable>]
type CALLCONV = 
Public Enum CALLCONV
Héritage
CALLCONV
Attributs

Champs

CC_CDECL 1

Indique que la convention d’appel de déclaration C (CDECL) est utilisée pour une méthode.

CC_MACPASCAL 3

Indique que la convention d’appel Macintosh Pascal (MACPASCAL) est utilisée pour une méthode.

CC_MAX 9

Indique la fin de l’énumération CALLCONV.

CC_MPWCDECL 7

Indique que la convention d’appel Macintosh Programmers’ Workbench (MPW) CDECL est utilisée pour une méthode.

CC_MPWPASCAL 8

Indique que la convention d’appel Macintosh Programmers’ Workbench (MPW) PASCAL est utilisée pour une méthode.

CC_MSCPASCAL 2

Indique que la convention d’appel MSC Pascal (MSCPASCAL) est utilisée pour une méthode.

CC_PASCAL 2

Indique que la convention d’appel Pascal est utilisée pour une méthode.

CC_RESERVED 5

Cette valeur est réservée à une utilisation ultérieure.

CC_STDCALL 4

Indique que la convention d’appel standard (STDCALL) est utilisée pour une méthode.

CC_SYSCALL 6

Indique que la convention d’appel SYSCALL standard est utilisée pour une méthode.

Remarques

Les conventions d’appel de cette classe décrivent comment les fonctions passent des arguments et retournent des valeurs. Ils spécifient l’ordre dans lequel les paramètres sont configurés pour les fonctions appelées, où les paramètres sont stockés (dans les registres ou en mémoire) et qui (appelant ou fonction appelée) est responsable du nettoyage de la pile après le retour de la fonction. Exemple :

  • CC_CDECL utilise les conventions de nommage et d’appel du langage C. L’appelant envoie (push) les paramètres sur la pile dans l’ordre inverse (de droite à gauche) et nettoie la pile après le retour de la fonction. Cette convention d’appel vous permet d’appeler des fonctions avec varargs, ce qui le rend approprié pour une utilisation avec des méthodes qui acceptent un nombre variable de paramètres, tels que les fonctions d’exécution C printf, _printf_l, wprintf, _wprintf_l.

  • CC_PASCAL utilise la convention d’appel Pascal. L’appelant envoie les paramètres sur la pile dans l’ordre de gauche à droite. La fonction appelée nettoie la pile avant de revenir.

  • CC_STDCALL est la convention d’appel standard pour les fonctions Win32. Il s’agit de la convention par défaut pour appeler des fonctions non managées avec un appel de plateforme. L’appelant envoie (push) les paramètres sur la pile dans l’ordre inverse (de droite à gauche), et la fonction appelée nettoie la pile avant de revenir.

  • CC_SYSCALL est similaire à CDECL dans le fait que les arguments sont poussés de droite à gauche. Les registres EAX, ECX et EDX ne sont pas conservés.

Ces identificateurs de convention d’appel sont utilisés par .NET Framework, la plateforme Windows Embedded CE et par Automation.

Le Common Language Runtime lève une exception lorsqu’une méthode COM en code natif retourne un HRESULT. Pour plus d'informations, consultez How to: Map HRESULTs and Exceptions.

S’applique à

Voir aussi