Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Hace referencia a: Outlook 2013 | Outlook 2016
Los identificadores de entrada se construyen con la estructura ENTRYID . La estructura ENTRYID se compone de una marca que describe los atributos del identificador de entrada y el identificador de entrada real.
ENTRYID (estructura)
La estructura ENTRYID se define de la siguiente manera:
typedef struct
{
BYTE abFlags[4];
BYTE ab[MAPI_DIM];
} ENTRYID, FAR *LPENTRYID;
MAPI_DIM es una constante que se define en el archivo de encabezado MapiDefs.h.
El primer byte del miembro abFlags de 4 bytes describe el tipo y el uso del identificador de entrada y puede tener los siguientes valores:
MAPI_NOTRECIP: indica que el identificador de entrada no se puede usar como destinatario en un mensaje.
MAPI_NOTRESERVED: indica que otros usuarios no pueden acceder al identificador de entrada.
MAPI_NOW: indica que el identificador de entrada no se puede usar en otras ocasiones.
MAPI_SHORTTERM: indica que el identificador de entrada es a corto plazo. Todos los demás valores de este byte deben establecerse a menos que se permitan otros usos del identificador de entrada.
MAPI_THISSESSION: indica que el identificador de entrada no se puede usar en otras sesiones.
MAPI_NOTRESERVED: indica que otros proveedores de servicios pueden usar el identificador de entrada para otros objetos.
El miembro ab de identificadores de entrada que crean los proveedores de almacén de mensajes y libreta de direcciones se compone de dos partes: una estructura MAPIUID de 16 bytes que identifica el proveedor de servicios y una pieza para identificar el objeto. MAPIUID es una estructura que contiene un identificador único global o GUID. Un GUID es un identificador independiente del orden de bytes que se puede crear mediante la herramienta Microsoft Visual Studio*Crear GUID**.
Un proveedor de servicios registra su estructura MAPIUID con MAPI durante el proceso de inicio de sesión en una llamada al método IMAPISupport::SetProviderUID . Cuando un cliente llama a un método OpenEntry para tener acceso a un objeto, MAPI usa la estructura MAPIUID para determinar qué proveedor de servicios puede proporcionar ese acceso. Los proveedores de servicios deben usar la misma estructura MAPIUID para todas las versiones de su archivo DLL. Esto permite a los clientes con la versión más reciente responder a los mensajes enviados y guardados con la versión anterior.
El resto del miembro ab después de MAPIUID de 16 bytes contiene datos binarios específicos del proveedor de servicios para identificar objetos concretos. No hay ningún tamaño fijo para esta parte del identificador de entrada. Puede ser de cualquier tamaño, dentro de la razón. Normalmente, un proveedor de servicios incluye la siguiente información en esta parte de sus identificadores de entrada:
Información de versión: dado que es habitual que un proveedor de servicios cambie el formato de sus identificadores de entrada de versión a versión, el almacenamiento de información de versión permite determinar rápidamente cómo descifrar cualquier identificador de entrada.
Información de ubicación: la información de ubicación es datos que proporcionan a un proveedor de servicios un indicador de cómo localizar el objeto representado por el identificador de entrada. Por ejemplo, un proveedor de servicios puede almacenar el desplazamiento de disco para el último lugar de un archivo de datos que se almacenó el objeto. Dado que este tipo de información puede cambiar con el tiempo, los proveedores de servicios deben proporcionar varias maneras de localizar objetos en sus identificadores de entrada.
Aunque los proveedores de servicios pueden reciclar sus identificadores de entrada, deben evitar esta práctica. Si es necesario reutilizar un identificador de entrada, los proveedores de servicios deben realizar el período de tiempo que transcurre entre el uso inicial y la reutilización siempre que sea posible. Además, el identificador de entrada debe reasignarse a otro objeto del mismo tipo. Es decir, un identificador de entrada determinado no debe asociarse primero a un mensaje y, después, a una carpeta.