2014-12-29 1 views
1

전자 메일 메시지를 읽지 않은 상태로 설정하려면 어떻게해야합니까 ?? 메시지를 읽지 않은 상태로 설정하려면 어떻게해야합니까 ?? delphi 7 및 imap from indy10

여기에 내가

나는 읽기와 같은, 그것은 플래그 Gmail을 읽을 Gmail을

에서받은 편지함에서 이메일을 읽을 수, 그래서 나는 다시 읽지 같은 플래그 싶습니다.

TheImap.GetUID(i+1, TheUID); 
TheImap.UIDRetrieveFlags(TheUID, TheFlags); 
TheImap.UIDRetrieveHeader(TheUID, TheMsg); 
TheImap.UIDRetrieveText(TheUID, lacadena); 

if mfSeen in TheFlags then begin 
    TheImap.StoreFlags(TheUID, sdReplace, TheMsg.Flags - [mfSeen]); 

답변

2

MsgNum 정수가 필요한 UID 문자열을 전달하려고합니다. 당신은 StoreFlags() 대신 UIDStoreFlags()를 사용해야합니다 : 다음 TheImap.StoreFlags을 시작 TheFlags에서 호환되지 않는 유형의 배열 및 문자열 mfSeen 경우는 줘

TheImap.UIDStoreFlags(TheUID, sdReplace, TheFlags - [mfSeen]); 
+0

오류입니다 (TheUID, sdReplace, TheMsg.Flags - [mfSeen]) ; –

+0

이들은 var입니다. TheFlags : TIdMessageFlagsSet; UU : string; nCount : 정수; TheMsg : TIdMessage; MailBoxName : string; lacadena : string; i : 정수; bRet : Boolean; OpenSSLHandler : TIdSSLIOHandlerSocketOpenSSL; –

+0

다시 말하지만,'StoreFlags()'가 아니라'UIDStoreFlags()'를 사용해야합니다. 메소드 이름에'UID' 접두사가 있음을 주목하라. –

관련 문제