2017-10-31 12 views
0

Gmail 계정에서 메일을 가져 오기 위해 MailSystem.Net을 사용하려고하는데 위와 같은 오류가 발생합니다. googl에서 그런 오류와 관련된 링크를 찾지 못하는 것 같습니다. 명령 "목록"받은 편지함 ""* ""실패 : 다음이 내가 가진 오류입니다MailSystem.net을 사용하는 동안 '명령'목록 "받은 편지함" "*" "실패"

public class MailRepository 
     { 
      private Imap4Client client; 
      public MailRepository(string mailServer, int port, bool ssl, string login, string password) 
      { 
       if (ssl) 

        Client.ConnectSsl(mailServer, port); 
       else 

        Client.Connect(mailServer, port); 


      } 
      public IEnumerable<Message> GetAllMails(string mailBox) 
      { 
       return GetMails(mailBox, "ALL").Cast<Message>(); 
      } 

      public IEnumerable<Message> GetUnreadMails(string mailBox) 
      { 
       return GetMails(mailBox, "UNSEEN").Cast<Message>(); 
      } 

      protected Imap4Client Client 
      { 
       get { return client ?? (client = new Imap4Client()); } 
      } 

      private MessageCollection GetMails(string mailBox, string searchPhrase) 
      { 
       Mailbox mails = Client.SelectMailbox(mailBox); 
       MessageCollection messages = mails.SearchParse(searchPhrase); 
       return messages; 
      } 
     } 

내 코드는 내가 잘못하고있는 무슨

private void ReadImap() 
     { 
      var mailRespository = new MailUtil.MailRepository("imap.gmail.com", 993, true, "myGmailAccount", "Mypassword"); 
      var emailList = mailRespository.GetAllMails("inbox"); 
      foreach(Message email in emailList) 
      { 
       //DoSomething 

       if(email.Attachments.Count > 0) 
       { 
        //DoSomething 
       } 
      } 
     } 

b7mb174701481wmf 171031010631135 BAD 알 수없는 명령 ?? 나는 데모 목적으로 여기에서 온라인으로 읽은 것을 그대로 복제하고 있습니다.

+0

전체 오류 및 역 추적을 제공하십시오 : 귀하의 예제에서

, 당신은 Client.Login 떨어졌다. 관련성이있는 질문에 – Max

+0

명령 "list"inbox ""* ""failed : 171031010631135 BAD 알 수 없음 명령 b7mb174701481wmf가 내가 가진 오류 중 하나입니다. 나는 그것을 서비스로 썼다. 나는 그 오류를 폴더에 기록하고있다. 일련의 명령 "목록"받은 편지함 ""오류는 내가 만든 로그 폴더에서 찾을 수 있습니다. – Mcbaloo

+0

로그인하지 않은 것 같습니다. 당신은 사용자 이름과 암호를 전달하고 절대 사용하지 마십시오. – Max

답변

1

로그인을 시도 했습니까?

로그인하지 않았기 때문에 오류가 발생하여 LIST 명령이 유효하지 않은 것으로 보입니다.

public MailRepository(string mailServer, int port, bool ssl, string login, string password) 
    { 
     if (ssl) 
      Client.ConnectSsl(mailServer, port); 
     else 
      Client.Connect(mailServer, port); 
     Client.Login(login, password); // LINE YOU MISSED 
    } 
+0

로그인 할 수 있는지 확인하기 위해 코드를 수정하려고 시도했습니다. 현재 로그인 할 수 있습니다. 그 때 내가 내 현재 읽지 않은 메시지를 얻고 싶습니다. 오류가 발생했습니다. – Mcbaloo

+0

질문에 USING하는 코드를 입력하십시오. 현재 코드가 로그인하지 않습니다. 따라서이 오류가 발생합니다. 모든 연결에 로그인해야합니다! – Max

+0

나는 너를 조금이라도 생각하고있다. 내가 말했듯이, 나는 단지 내가 온라인으로 연습 한 것을 사용하고 있습니다. 아직 잡히지 않았습니다. 현재 로그인 할 수 없다고했는데, 사용중인 코드에서 내 Gmail 자격 증명이 있습니다. 내가 로그인 할 필요가있는 다른 일이 있습니까 ?? 코드 스 니펫으로 도울 수 있습니다 – Mcbaloo