Guardar propiedades MAPI
Hace referencia a: Outlook 2013 | Outlook 2016
Muchos objetos admiten un modelo de transacción de procesamiento por el que los cambios en las propiedades no se convierten en permanentes hasta que se confirman más adelante. Mientras que los cambios en las propiedades se controlan mediante los métodos IMAPIProp::SetProps e IMAPIProp::D eleteProps , IMAPIProp::SaveChanges controla el paso de confirmación. No es hasta después de una llamada correcta a SaveChanges a la que se puede acceder a la versión más reciente de las propiedades de un objeto.
Cuando SaveChanges devuelve el valor de error MAPI_E_OBJECT_CHANGED, se trata de una advertencia de que otro cliente confirma simultáneamente los cambios en el objeto. Es posible, en función del proveedor que implemente el objeto, que varios clientes abran correctamente un objeto llamando a su método OpenEntry con la marca MAPI_MODIFY establecida, dándole acceso de lectura y escritura. El objeto que se devuelve a partir de dicha llamada a OpenEntry es una instantánea de los datos de almacenamiento. Cada intento posterior de cambiar estos datos puede sobrescribir el intento anterior.
Al recibir MAPI_E_OBJECT_CHANGED de SaveChanges, un cliente tiene la opción de:
Realice una copia del objeto para contener los cambios.
Realice otra llamada a SaveChanges, especificando FORCE_SAVE.
Al llamar a SaveChanges con la marca FORCE_SAVE se sobrescribe el guardado anterior y se hacen permanentes los cambios de un cliente.