Compartir a través de


HrAddColumnsEx

Hace referencia a: Outlook 2013 | Outlook 2016

Agrega o mueve columnas al principio de una tabla existente.

Propiedad Valor
Archivo de encabezado:
Mapiutil.h
Implementado por:
MAPI
Llamado por:
Aplicaciones cliente y proveedores de servicios
HRESULT HrAddColumnsEx(
  LPMAPITABLE lptbl,
  LPSPropTagArray lpproptagColumnsNew,
  LPALLOCATEBUFFER lpAllocateBuffer,
  LPFREEBUFFER lpFreeBuffer,
  void (FAR * lpfnFilterColumns)(
  LPSPropTagArray ptaga)
);

Parameters

lptbl

[in] Puntero a la tabla MAPI afectada.

lpproptagColumnsNew

[in] Puntero a una estructura SPropTagArray que contiene una matriz de etiquetas de propiedad para las propiedades que se van a agregar o mover al principio de la tabla.

lpAllocateBuffer

[in] Puntero a la función MAPIAllocateBuffer , que se usará para asignar memoria.

lpFreeBuffer

[in] Puntero a la función MAPIFreeBuffer , que se usará para liberar memoria.

lpfnFilterColumns

[in] Puntero a una función de devolución de llamada que proporciona el autor de la llamada. Si el parámetro lpfnFilterColumns se establece en NULL, no se realiza ninguna devolución de llamada.

ptaga

[in] Puntero a una estructura SPropTagArray que contiene la matriz de etiquetas de propiedad que ya existe en la tabla antes de que las propiedades se agreguen o muevan al principio. HrAddColumnsEx pasa este puntero como parámetro a la función de devolución de llamada a la que apunta lpfnFilterColumns.

Valor devuelto

S_OK

La llamada se realizó correctamente y las columnas especificadas se movieron o agregaron.

Comentarios

Las propiedades que se pasan a HrAddColumnsEx mediante el parámetro lpproptagColumnsNew se convierten en las primeras propiedades expuestas en llamadas posteriores al método IMAPITable::QueryRows . Las propiedades anteriores de la tabla que no se especificaron en el parámetro lpproptagColumnsNew se exponen después de todas las propiedades agregadas y movidas.

Si las propiedades de tabla no están definidas cuando se llama a QueryRows , se devuelven con el tipo de propiedad PT_NULL y el identificador de propiedad PROP_ID_NULL.

Notas para los llamadores

La función HrAddColumnsEx permite al autor de la llamada proporcionar una función de devolución de llamada para filtrar las columnas que ya estaban en la tabla, por ejemplo, para convertir cadenas del tipo de propiedad PT_UNICODE a PT_STRING8. HrAddColumnsEx pasa un puntero al conjunto de columnas existente anteriormente como parámetro a la función de devolución de llamada. La función de devolución de llamada puede cambiar los datos de la matriz de etiquetas de propiedad, pero no puede agregar etiquetas nuevas.

HrAddColumnsEx llama primero a la función de devolución de llamada si se proporciona una, luego agrega o mueve las columnas especificadas y, por último, llama a IMAPITable::SetColumns.

Los parámetros de entrada lpAllocateBuffer y lpFreeBuffer apuntan a las funciones MAPIAllocateBuffer y MAPIFreeBuffer , respectivamente. Los valores exactos de los punteros pasados a HrAddColumnsEx dependen de si el autor de la llamada es una aplicación cliente o un proveedor de servicios. Un cliente pasa punteros a las funciones MAPI con los nombres especificados. Un proveedor de servicios pasa los punteros que recibió en su llamada de inicialización o se recuperó llamando al método IMAPISupport::GetMemAllocRoutines .

Vea también

IMAPITable::QueryColumns