Compartir a través de


ENTRYID

Hace referencia a: Outlook 2013 | Outlook 2016

Contiene un identificador de entrada para un objeto MAPI.

Propiedad Valor
Archivo de encabezado:
Mapidefs.h
Macros relacionadas:
CbNewENTRYID, SizedENTRYID
typedef struct
{
  BYTE abFlags[4];
  BYTE ab[MAPI_DIM];
} ENTRYID, FAR *LPENTRYID;

Members

abFlags

Máscara de bits de marcas que proporcionan información que describe el objeto. El proveedor solo puede establecer el primer byte de las marcas, abFlags[0]; los otros tres están reservados. Estas marcas no deben establecerse para los identificadores de entrada permanentes; solo se establecen para identificadores de entrada a corto plazo. Para los clientes, esta estructura es de solo lectura. Las siguientes marcas se pueden establecer en abFlags[0]:

MAPI_NOTRECIP

El identificador de entrada no se puede usar como destinatario en un mensaje.

MAPI_NOTRESERVED

Otros usuarios no pueden acceder al identificador de entrada.

MAPI_NOW

El identificador de entrada no se puede usar en otras ocasiones.

MAPI_SHORTTERM

El identificador de entrada es a corto plazo. Todos los demás valores de este byte deben establecerse a menos que se habiliten otros usos del identificador de entrada.

MAPI_THISSESSION

El identificador de entrada no se puede usar en otras sesiones.

Ab

Indica una matriz de datos binarios que usan los proveedores de servicios. La aplicación cliente no puede usar esta matriz.

Comentarios

Los proveedores de almacén de mensajes y libreta de direcciones usan la estructura ENTRYID para construir identificadores únicos para sus objetos. Los identificadores de entrada se usan para identificar los siguientes tipos de objetos:

  • Almacenes de mensajes

  • Folders

  • Mensajes

  • Contenedores de libreta de direcciones

  • Listas de distribución

  • Usuarios de mensajería

  • Objetos de estado

  • Secciones de perfil

Cada proveedor usa un formato para la estructura ENTRYID que tiene sentido para ese proveedor.

Los identificadores de entrada no pueden compararse directamente porque un objeto puede estar representado por dos valores binarios distintos. Para determinar si dos identificadores de entrada representan el mismo objeto, llame al método IMAPISession::CompareEntryIDs .

Cuando un cliente llama al método IMAPIProp::GetProps de un objeto para recuperar su identificador de entrada, el objeto devuelve la forma más permanente del identificador de entrada. Un cliente puede comprobar que un identificador de entrada es a largo plazo comprobando que ninguna de las marcas se establece en el primer byte del miembro abFlags .

Cuando un cliente accede a un identificador de entrada a través de una columna de una tabla, lo más probable es que este identificador de entrada sea a corto plazo en lugar de a largo plazo. Los identificadores de entrada a corto plazo se pueden usar para abrir sus objetos correspondientes solo en la sesión MAPI actual. Un cliente puede comprobar que un identificador de entrada es a corto plazo comprobando que todas las marcas se establecen en el primer byte del miembro abFlags .

Algunos identificadores de entrada son a corto plazo, pero tienen un uso a largo plazo. Este identificador de entrada tendrá una o varias de las marcas adecuadas establecidas en el primer byte de su miembro abFlags .

Una estructura ENTRYID es similar a una estructura FLATENTRY . Sin embargo, hay algunas diferencias:

  • Una estructura ENTRYID no almacena el tamaño del identificador de entrada; una estructura FLATENTRY sí.

  • Una estructura ENTRYID almacena los datos de marca y el resto del identificador de entrada por separado; Una estructura FLATENTRY almacena los datos de marca con el resto del identificador de entrada.

  • Una estructura ENTRYID se pasa como parámetro a los métodos de la interfaz IMAPIProp y a los siguientes métodos OpenEntry : IABLogon::OpenEntry, IAddrBook::OpenEntry, IMAPIContainer::OpenEntry, IMAPISession::OpenEntry, IMAPISupport::OpenEntry, IMsgStore::OpenEntry, IMSLogon::OpenEntry

  • Se usa una estructura ENTRYID para almacenar un identificador de entrada en el disco. Una estructura FLATENTRY se usa para almacenar un identificador de entrada en un archivo o pasarlo en un flujo de bytes.

Los clientes siempre deben pasar identificadores de entrada alineados de forma natural. Aunque los proveedores deben controlar identificadores de entrada alineados arbitrariamente, los clientes no deben esperar este comportamiento. Si no se pasa un buen identificador de entrada alineado a un método, se puede producir un error de alineación en los procesadores RISC.

El factor de alineación natural, normalmente de 8 bytes, es el tipo de datos más grande admitido por la CPU y, normalmente, el mismo factor de alineación utilizado por el asignador de memoria del sistema. Una dirección de memoria alineada naturalmente permite a la CPU acceder a cualquier tipo de datos que admita en esa dirección sin generar un error de alineación. En el caso de las CPU RISC, un tipo de datos de tamaño N bytes normalmente debe alinearse en un múltiplo par de N bytes, siendo la dirección un múltiplo par de N.

Para obtener más información, vea Identificadores de entrada.

Vea también

FLATENTRY

IMAPISupport::CompareEntryIDs

Propiedad canónica PidTagRecordKey

Estructuras MAPI