Partager via


HrAddColumnsEx

S’applique à : Outlook 2013 | Outlook 2016

Ajoute ou déplace des colonnes au début d’une table existante.

Propriété Valeur
Fichier d’en-tête :
Mapiutil.h
Implémenté par :
MAPI
Appelé par :
Applications clientes et fournisseurs de services
HRESULT HrAddColumnsEx(
  LPMAPITABLE lptbl,
  LPSPropTagArray lpproptagColumnsNew,
  LPALLOCATEBUFFER lpAllocateBuffer,
  LPFREEBUFFER lpFreeBuffer,
  void (FAR * lpfnFilterColumns)(
  LPSPropTagArray ptaga)
);

Paramètres

lptbl

[in] Pointeur vers la table MAPI affectée.

lpproptagColumnsNew

[in] Pointeur vers une structure SPropTagArray qui contient un tableau de balises de propriété pour les propriétés à ajouter ou à déplacer vers le début de la table.

lpAllocateBuffer

[in] Pointeur vers la fonction MAPIAllocateBuffer , à utiliser pour allouer de la mémoire.

lpFreeBuffer

[in] Pointeur vers la fonction MAPIFreeBuffer , à utiliser pour libérer de la mémoire.

lpfnFilterColumns

[in] Pointeur vers une fonction de rappel fournie par l’appelant. Si le paramètre lpfnFilterColumns est défini sur NULL, aucun rappel n’est effectué.

ptaga

[in] Pointeur vers une structure SPropTagArray qui contient le tableau des balises de propriété déjà existantes dans la table avant que les propriétés soient ajoutées ou déplacées au début. HrAddColumnsEx transmet ce pointeur en tant que paramètre à la fonction de rappel pointée par lpfnFilterColumns.

Valeur renvoyée

S_OK

L’appel a réussi et les colonnes spécifiées ont été déplacées ou ajoutées.

Remarques

Les propriétés passées à HrAddColumnsEx à l’aide du paramètre lpproptagColumnsNew deviennent les premières propriétés exposées lors des appels suivants à la méthode IMAPITable ::QueryRows . Toutes les propriétés figurant précédemment dans la table qui n’étaient pas spécifiées dans le paramètre lpproptagColumnsNew sont exposées après toutes les propriétés ajoutées et déplacées.

Si des propriétés de table ne sont pas définies lorsque QueryRows est appelé, elles sont retournées avec le type de propriété PT_NULL et l’identificateur de propriété PROP_ID_NULL.

Remarques pour les appelants

La fonction HrAddColumnsEx permet à l’appelant de fournir une fonction de rappel pour filtrer les colonnes qui se trouvaient déjà dans la table, par exemple pour convertir des chaînes de type de propriété PT_UNICODE en PT_STRING8. HrAddColumnsEx transmet un pointeur à la colonne précédemment existante définie en tant que paramètre de la fonction de rappel. La fonction de rappel peut modifier les données dans le tableau de balises de propriétés, mais elle ne peut pas ajouter de nouvelles balises.

HrAddColumnsEx appelle d’abord la fonction de rappel si elle est fournie, puis ajoute ou déplace les colonnes spécifiées, puis appelle IMAPITable ::SetColumns.

Les paramètres d’entrée lpAllocateBuffer et lpFreeBuffer pointent vers les fonctions MAPIAllocateBuffer et MAPIFreeBuffer , respectivement. Les valeurs exactes des pointeurs passés à HrAddColumnsEx varient selon que l’appelant est une application cliente ou un fournisseur de services. Un client passe des pointeurs aux fonctions MAPI avec les noms spécifiés. Un fournisseur de services transmet les pointeurs qu’il a reçus dans son appel d’initialisation ou récupérés en appelant la méthode IMAPISupport ::GetMemAllocRoutines .

Voir aussi

IMAPITable::QueryColumns