RESPONDER UNA PREGUNTA

Si para responder la pregunta, crees necesario enviar un archivo adjunto, puedes hacerlo a traves del correo [email protected]

    Pregunta:  66360 - LEER CORREOS DE CONFIRMACIÓN DE LECTURA
Autor:  Joel Duran
Buen día amigos, tengo una aplicación en VFP capaz de enviar y recibir correos usando Outlook. En especifico, al momento de leer la bandeja de entrada cargo en un grid el remitente, el asunto y otros datos y posteriormente los envío a una tabla para tener un registro de los mismos.

El problema es que al leer correos de confirmación de lectura o recepción de un mensaje enviado, me da el error 0x80020006 Unknown COM status code....

Quiero pensar que este tipo de correos no tiene las mismas propiedades que un correo genérico.

Asi que mi pregunta es, cómo puedo extraer las propiedades de estos correos para guardarlas en mi tabla?

esto es el codigo con el que leo los mensajes:

PROCEDURE LeerMensajes(tlNoLeidos, tcAlias)

LOCAL loInbox AS 'Outlook.MAPIFolder', loMensajes AS 'Outlook.Items'
LOCAL loMsg AS OBJECT, lnI AS INTEGER, llRet AS Logical
IF EMPTY(tcAlias)
tcAlias = 'curMsg'
ENDIF
*-- Inbox
loInbox = THIS.oNameSpace.GetDefaultFolder(6)
*-- Mensajes del Inbox
IF tlNoLeidos
loMensajes = loInbox.Items.RESTRICT("[Unread] = True")
ELSE
loMensajes = loInbox.Items
ENDIF
IF VARTYPE(loMensajes) = 'O'
WITH loMensajes
IF .COUNT > 0
*-- Recorro los mensajes
FOR lnI = 1 TO .COUNT
loMsg = .ITEM(lnI)

WITH loMsg

INSERT INTO (tcAlias) (EnviadoPor, Tema, Recibido, Cuerpo, NoLeido) ;
VALUES (.SenderName, .Subject, .ReceivedTime, .Body, .UnRead) &&AQUI ME GENERA EL ERROR
else
endif
ENDWITH
ENDFOR
llRet = .T.
ELSE
llRet = .F.
ENDIF
ENDWITH
ELSE
llRet = .F.
ENDIF
RETURN llRet
ENDPROC


Nombre
Apellidos
Correo
Comentarios