L
lefty1984
Guest
Dear Roger, I don't use a assemblies.xml file. Only in my projects I'll use it. This is the code I use: --------------- 4GL code --------------- USING System.Net.* FROM ASSEMBLY. USING System.IO.* FROM ASSEMBLY. USING S22.Imap.* FROM ASSEMBLY. DEFINE VARIABLE M-IMAP-USERNAME AS CHARACTER NO-UNDO. DEFINE VARIABLE M-IMAP-PASSWORD AS CHARACTER NO-UNDO. DEFINE VARIABLE M-COUNT AS INTEGER NO-UNDO. DEFINE VARIABLE M-OBJ-CLIENT AS CLASS S22.Imap.ImapClient NO-UNDO. DEFINE VARIABLE M-OBJ-AuthMethod AS CLASS S22.Imap.AuthMethod NO-UNDO. DEFINE VARIABLE M-OBJ-RemoteCertificateValidationCallback AS CLASS System.Net.Security.RemoteCertificateValidationCallback NO-UNDO. DEFINE VARIABLE M-OBJ-SearchCondition AS CLASS S22.Imap.SearchCondition NO-UNDO. DEFINE VARIABLE M-OBJ-MailMessage AS CLASS System.Net.Mail.MailMessage NO-UNDO. DEFINE VARIABLE oUints AS CLASS "System.Collections.Generic.IEnumerable " NO-UNDO. DEFINE VARIABLE oMessages AS CLASS "System.Collections.Generic.IEnumerable " NO-UNDO. DEFINE VARIABLE oIEnumerator AS CLASS System.Collections.IEnumerator NO-UNDO. M-OBJ-CLIENT = NEW S22.Imap.ImapClient("", 993, TRUE, M-OBJ-RemoteCertificateValidationCallback). M-OBJ-CLIENT:Login(M-IMAP-USERNAME, M-IMAP-PASSWORD, M-OBJ-AuthMethod) NO-ERROR. /* IEnumerable uids = Client.Search( SearchCondition.All()); */ oUints = CAST(M-OBJ-CLIENT:Search(SearchCondition:ALL(), "Inbox"), System.Collections.IEnumerable). /* IEnumerable messages = client.GetMessages(uids); */ oMessages = CAST(M-OBJ-CLIENT:GetMessages(oUints, true, "Inbox"), System.Collections.IEnumerable). oIEnumerator = oMessages:GetEnumerator(). DO WHILE oIEnumerator:MoveNext(): M-OBJ-MailMessage=CAST(oIEnumerator:Current, System.Net.Mail.MailMessage). ASSIGN M-COUNT=M-COUNT + 1. MESSAGE M-OBJ-MailMessage:From VIEW-AS ALERT-BOX. END.
Continue reading...
Continue reading...