Hi,
i´ve setup a small testprogram to play with the dll´s
really nice until now. But i´m struggling if i test different folders.
If i select the "INBOX" folder the count of attachments will showed correctly. All other folders will show me a count of zero (0). But the mails containing a attachment.
any idea?
PS: mailbox is located at microsoft O365.
best regards
Nico
```
ImapX.ImapClient client = new ImapX.ImapClient();
Console.WriteLine("Hole Daten vom IMAP Server....");
client.Host = IMAP_HOSTNAME;
client.Port = IMAP_PORT;
client.SslProtocol = System.Security.Authentication.SslProtocols.Ssl3;
client.Behavior.ExamineFolders = false;
client.Behavior.AutoPopulateFolderMessages = true;
client.Behavior.MessageFetchMode = MessageFetchMode.Body | MessageFetchMode.Attachments | MessageFetchMode.Flags | MessageFetchMode.Headers;
client.Behavior.RequestedHeaders = new[]
{
MessageHeader.MessageId,
MessageHeader.From,
MessageHeader.Date,
MessageHeader.Subject,
MessageHeader.ContentType,
MessageHeader.Importance
};
client.Connect();
if (client.IsConnected)
{
client.Login(GetSharedMailboxUser(IMAP_USERNAME, IMAP_SHAREDMAILBOX), IMAP_PASSWORD);
if (client.IsAuthenticated)
{
//foreach (var folder in Program.ImapClient.Folders)
//{
// Console.WriteLine(folder.Name);
//}
for (int i = 0; i < client.Folders.Count() - 1; i++)
{
Console.WriteLine("INDEX: {1} Folder: {0}", client.Folders[i].Name, i);
}
Console.WriteLine();
Console.Write("Welcher Ordner soll ausgelesen werden? (INDEX):");
var idx = Console.ReadLine();
int index = Convert.ToInt32(idx);
Folder folder = client.Folders[index];
Console.WriteLine();
Console.WriteLine("IMAP-Folder: {0}", folder.Name);
//var mails = folder.Search().ToList().Take(10);
Console.WriteLine("Anzahl Mails: {0}", folder.Messages.Count());
Console.WriteLine();
foreach (var mail in folder.Messages)
{
Console.WriteLine(" ----------------------------------------------------- ");
Console.Write("UID: ");
Console.WriteLine(mail.UId);
Console.WriteLine();
Console.Write("BETREFF: ");
Console.WriteLine(mail.Subject);
Console.WriteLine();
Console.Write("ABSENDER: ");
Console.WriteLine(mail.From);
Console.WriteLine();
Console.Write("ANZAHL ATTACHMENTS: ");
Console.WriteLine(mail.Attachments.Count());
Console.WriteLine();
}
}
}
client.Disconnect();
```
i´ve setup a small testprogram to play with the dll´s
really nice until now. But i´m struggling if i test different folders.
If i select the "INBOX" folder the count of attachments will showed correctly. All other folders will show me a count of zero (0). But the mails containing a attachment.
any idea?
PS: mailbox is located at microsoft O365.
best regards
Nico
```
ImapX.ImapClient client = new ImapX.ImapClient();
Console.WriteLine("Hole Daten vom IMAP Server....");
client.Host = IMAP_HOSTNAME;
client.Port = IMAP_PORT;
client.SslProtocol = System.Security.Authentication.SslProtocols.Ssl3;
client.Behavior.ExamineFolders = false;
client.Behavior.AutoPopulateFolderMessages = true;
client.Behavior.MessageFetchMode = MessageFetchMode.Body | MessageFetchMode.Attachments | MessageFetchMode.Flags | MessageFetchMode.Headers;
client.Behavior.RequestedHeaders = new[]
{
MessageHeader.MessageId,
MessageHeader.From,
MessageHeader.Date,
MessageHeader.Subject,
MessageHeader.ContentType,
MessageHeader.Importance
};
client.Connect();
if (client.IsConnected)
{
client.Login(GetSharedMailboxUser(IMAP_USERNAME, IMAP_SHAREDMAILBOX), IMAP_PASSWORD);
if (client.IsAuthenticated)
{
//foreach (var folder in Program.ImapClient.Folders)
//{
// Console.WriteLine(folder.Name);
//}
for (int i = 0; i < client.Folders.Count() - 1; i++)
{
Console.WriteLine("INDEX: {1} Folder: {0}", client.Folders[i].Name, i);
}
Console.WriteLine();
Console.Write("Welcher Ordner soll ausgelesen werden? (INDEX):");
var idx = Console.ReadLine();
int index = Convert.ToInt32(idx);
Folder folder = client.Folders[index];
Console.WriteLine();
Console.WriteLine("IMAP-Folder: {0}", folder.Name);
//var mails = folder.Search().ToList().Take(10);
Console.WriteLine("Anzahl Mails: {0}", folder.Messages.Count());
Console.WriteLine();
foreach (var mail in folder.Messages)
{
Console.WriteLine(" ----------------------------------------------------- ");
Console.Write("UID: ");
Console.WriteLine(mail.UId);
Console.WriteLine();
Console.Write("BETREFF: ");
Console.WriteLine(mail.Subject);
Console.WriteLine();
Console.Write("ABSENDER: ");
Console.WriteLine(mail.From);
Console.WriteLine();
Console.Write("ANZAHL ATTACHMENTS: ");
Console.WriteLine(mail.Attachments.Count());
Console.WriteLine();
}
}
}
client.Disconnect();
```