如何将邮件设置为未读??使用来自indy10的delphi 7和imap
如何将电子邮件设置为未读 在这里,我阅读了gmail收件箱中的电子邮件 当我阅读gmail时,它会像读一样标记,所以我想再次像未读一样标记如何将邮件设置为未读??使用来自indy10的delphi 7和imap,delphi,imap,delphi-7,indy,indy10,Delphi,Imap,Delphi 7,Indy,Indy10,如何将电子邮件设置为未读 在这里,我阅读了gmail收件箱中的电子邮件 当我阅读gmail时,它会像读一样标记,所以我想再次像未读一样标记 TheImap.GetUID(i+1, TheUID); TheImap.UIDRetrieveFlags(TheUID, TheFlags); TheImap.UIDRetrieveHeader(TheUID, TheMsg); TheImap.UIDRetrieveText(TheUID, lacadena); if mfSeen in Th
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] );
您正在尝试传递一个UID字符串,其中需要MsgNum整数。您需要使用
UIDStoreFlags()
而不是StoreFlags()
:
它给我的错误是数组和字符串类型不兼容,如果mfSeen在offlags中,那么就开始map.StoreFlags(TheUID,sdReplace,TheMsg.Flags-[mfSeen]);这些是var补偿:TIdMessageFlagsSet;uid:string;n计数:整数;TheMsg:TID消息;MailBoxName:string;拉卡迪纳:弦;i:整数;布雷特:布尔;OpenSSLHandler:TIdSSLIOHandlerSocketOpenSSL;同样,您必须使用
UIDStoreFlags()
,而不是StoreFlags()
。注意方法名称上的UID
前缀。哦,我的错误,现在测试
TheImap.UIDStoreFlags(TheUID, sdReplace, TheFlags - [mfSeen]);