Hi All
I have tried using an earlier version of IMAP and don't seem to be winning. I am using the following code behind a button.
I have set the account I am using for 'less secure' and am able to successfully login, but after that things just hang.
I am very new to C# and still have to figure out how to see some debugging info in a messagebox or text box.
Will I be able to do the same with the latest version or will I have to alter my code ?
I wonder if someone would be so kind as to provide a specific example of using IMAPX which shows how to c# read an email with a specific subject from gmail and retrieve txt and save the attachment to file and then delete the email.
Kind regards
Den
I have tried using an earlier version of IMAP and don't seem to be winning. I am using the following code behind a button.
I have set the account I am using for 'less secure' and am able to successfully login, but after that things just hang.
I am very new to C# and still have to figure out how to see some debugging info in a messagebox or text box.
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using ImapX;
using System.Diagnostics;
using System.IO;
using System.Net.Sockets;
using System.Security.Authentication;
using System.Text.RegularExpressions;
using System.Threading;
using ImapX.Collections;
using ImapX.Constants;
using ImapX.Enums;
using ImapX.Exceptions;
using ImapX.Parsing;
namespace email_receive_and_send_imapx
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button2_Click(object sender, System.EventArgs e)
{
var client = new ImapClient("imap.gmail.com", true);
if (client.Connect())
{
if (client.Login("username@gmail.com", "password"))
{
// login successful
MessageBox.Show("login successful");
MessageBox.Show("login success");
client.Behavior.MessageFetchMode = MessageFetchMode.Full;
FolderCollection folders = client.Folders;
var messages = client.Folders["INBOX"].Search("test email", MessageFetchMode.Full);
var folderPath = @"C:\attachments";
for (int i = 0; i < messages.Length; i++)
{
if (messages[i].Attachments.Length > 0)
{
Attachment[] atts = messages[i].Attachments;
for (int j = 0; j < atts.Length; j++)
{
if (atts[j].FileName.Contains("test") || atts[j].FileName.Contains("txt"))
{
atts[j].Download();
atts[j].Save(folderPath, atts[j].FileName);
MessageBox.Show("successful save");
}
}
}
}
}
}
}
}
}
First of all, Please forgive the newbie request here.Will I be able to do the same with the latest version or will I have to alter my code ?
I wonder if someone would be so kind as to provide a specific example of using IMAPX which shows how to c# read an email with a specific subject from gmail and retrieve txt and save the attachment to file and then delete the email.
Kind regards
Den