Partager via


CALLFRAME_FREE énumération (callobj.h)

Détermine le type de paramètre à libérer.

Syntax

typedef enum CALLFRAME_FREE {
  CALLFRAME_FREE_NONE = 0,
  CALLFRAME_FREE_IN = 1,
  CALLFRAME_FREE_INOUT = 2,
  CALLFRAME_FREE_OUT = 4,
  CALLFRAME_FREE_TOP_INOUT = 8,
  CALLFRAME_FREE_TOP_OUT = 16,
  CALLFRAME_FREE_ALL = 31
} ;

Constantes

 
CALLFRAME_FREE_NONE
Valeur : 0
Aucune valeur n’est libérée.
CALLFRAME_FREE_IN
Valeur : 1
Les paramètres [in] sont libérés. Cela inclut à la fois les pointeurs de niveau supérieur et les données qu’ils référencent.
CALLFRAME_FREE_INOUT
Valeur : 2
Les données référencées par les paramètres [in, out] sont libérées. Toutefois, les pointeurs de niveau supérieur, qui sont les valeurs de paramètre réelles, ne sont pas libérés.

Côté serveur, il est généralement utilisé après l’appel, comme dans CALLFRAME_FREE_IN. Du côté client, cela est généralement utilisé lorsque le serveur n’a pas été réellement appelé (et que la suppression des valeurs de retour n’a donc pas été tentée) ou lorsque la démarshalation des valeurs de retour a échoué.
CALLFRAME_FREE_OUT
Valeur : 4
Les données référencées par les paramètres [out] sont libérées. Toutefois, les pointeurs de niveau supérieur, qui sont les valeurs de paramètre réelles, ne sont pas libérés.

Côté serveur, il est généralement utilisé après l’appel, comme dans CALLFRAME_FREE_IN. Côté client, cela est généralement utilisé uniquement en cas d’échec de la démarshalation des valeurs de retour.
CALLFRAME_FREE_TOP_INOUT
Valeur : 8
Les paramètres [in, out] sont libérés. Cela inclut à la fois les pointeurs de niveau supérieur et les données qu’ils référencent.
CALLFRAME_FREE_TOP_OUT
Valeur : 16
Les paramètres [out] sont libérés. Cela inclut à la fois les pointeurs de niveau supérieur et les données qu’ils référencent.
CALLFRAME_FREE_ALL
Valeur : 31
Tous les paramètres [in], [out] et [in, out] sont libérés. Cela inclut à la fois les pointeurs de niveau supérieur et les données qu’ils référencent.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête callobj.h

Voir aussi

ICallFrame ::Free

ICallFrame ::FreeParam