.NET (1317)
Children categories
When we operate the email messages, we may need to send the message to many more email address. Spire.Email supports to send a message to many email addresses at one time. This article demonstrates how to add the new send To and Cc email address from an existing email message via Spire.Email in C# and VB.NET.
Firstly, please view the sample email message with one to and cc email address:

How to add new send to and cc email addresses:
using Spire.Email;
namespace Update
{
class Program
{
static void Main(string[] args)
{
//Load the mail message from file
MailMessage mail = MailMessage.Load("Sample.msg");
//add a new To email address and its display name
mail.To.Add(new MailAddress("support@e-iceblue.com", "E-iceblue Support"));
// add a new Cc email address and its display name
mail.Cc.Add(new MailAddress("comments@e-iceblue.com", "Comments"));
// Save the message
mail.Save("ChangeEmailAddress.msg", MailMessageFormat.Msg);
}
}
}
Imports Spire.Email
Namespace Update
Class Program
Private Shared Sub Main(args As String())
'Load the mail message from file
Dim mail As MailMessage = MailMessage.Load("Sample.msg")
'add a new To email address and its display name
mail.[To].Add(New MailAddress("support@e-iceblue.com", "E-iceblue Support"))
' add a new Cc email address and its display name
mail.Cc.Add(New MailAddress("comments@e-iceblue.com", "Comments"))
' Save the message
mail.Save("ChangeEmailAddress.msg", MailMessageFormat.Msg)
End Sub
End Class
End Namespace
Effective screenshot after changing the email address:

Spire.Email allows developers to search mailbox for email messages that match the given search criteria. This article illustrates how to search email messages using Spire.Email component.
Detail steps:
Step 1: Create an ImapClient instance.
ImapClient imap = new ImapClient();
Step 2: Set host, port, authentication and connection protocol.
imap.Host = "outlook.office365.com"; imap.Port = 143; imap.Username = "LeonDavisLD@outlook.com"; imap.Password = "password"; imap.ConnectionProtocols = ConnectionProtocols.Ssl;
Step 3: connect the imap server.
imap.Connect();
Step 4: Select Inbox folder.
imap.Select("Inbox");
Step 5: Search email messages in the folder that match the search criteria.
//Search email messages sent from “Alice”
ImapMessageCollection messages = imap.Search("'From' Contains 'Alice'");
Console.WriteLine("Number of messages sent from Alice: " + messages.Count);
//Search email messages with “Spire” string in subject
messages = imap.Search("'Subject' Contains 'Spire'");
Console.WriteLine("Number of messages with 'Spire' in subject: " + messages.Count);
Screenshot:

Full code:
using Spire.Email;
using Spire.Email.IMap;
using System;
namespace SearchEmailMessages
{
class Program
{
static void Main(string[] args)
{
//Create an ImapClient instance
ImapClient imap = new ImapClient();
//Set host, port, authentication and connection protocol
imap.Host = "outlook.office365.com";
imap.Port = 143;
imap.Username = "LeonDavisLD@outlook.com";
imap.Password = "password";
imap.ConnectionProtocols = ConnectionProtocols.Ssl;
//Connect the imap server
imap.Connect();
//Select Inbox folder
imap.Select("Inbox");
//Search email messages sent from "Alice"
ImapMessageCollection messages = imap.Search("'From' Contains 'Alice'");
Console.WriteLine("Number of messages sent from Alice: " + messages.Count);
//Search email messages with “Spire” string in subject
messages = imap.Search("'Subject' Contains 'Spire'");
Console.WriteLine("Number of messages with 'Spire' in subject: " + messages.Count);
}
}
}
Imports Spire.Email
Imports Spire.Email.IMap
Namespace SearchEmailMessages
Class Program
Private Shared Sub Main(args As String())
'Create an ImapClient instance
Dim imap As New ImapClient()
'Set host, port, authentication and connection protocol
imap.Host = "outlook.office365.com"
imap.Port = 143
imap.Username = "LeonDavisLD@outlook.com"
imap.Password = "password"
imap.ConnectionProtocols = ConnectionProtocols.Ssl
'Connect the imap server
imap.Connect()
'Select Inbox folder
imap.[Select]("Inbox")
'Search email messages sent from "Alice"
Dim messages As ImapMessageCollection = imap.Search("'From' Contains 'Alice'")
Console.WriteLine("Number of messages sent from Alice: " + messages.Count)
'Search email messages with “Spire” string in subject
messages = imap.Search("'Subject' Contains 'Spire'")
Console.WriteLine("Number of messages with 'Spire' in subject: " + messages.Count)
End Sub
End Class
End Namespace
This article demonstrates how to delete a specific email message along with all email messages using Spire.Email component.
Detail steps:
Step 1: Create a POP3 client.
Pop3Client pop3 = new Pop3Client();
Step 2: Set host, authentication, port and connection protocol.
pop3.Host = "outlook.office365.com"; pop3.Username = "LeonDavisLD@outlook.com"; pop3.Password = "password"; pop3.Port = 995; pop3.EnableSsl = true;
Step 3: Connect the pop server.
pop3.Connect();
Step 4: Get the number of messages before deleting message(s).
//Get the number of messages before deleting message(s)
Pop3MessageInfoCollection messages = pop3.GetAllMessages();
Console.WriteLine("Number of messages before deleting: " + messages.Count);
Step 5: Delete message(s).
//Delete an email message by its sequence number pop3.DeleteMessage(2); //Delete all messages //pop3.DeleteAllMessages();
Step 6: Get the number of messages after deleting message(s).
//Get the number of messages after deleting message(s)
messages = pop3.GetAllMessages();
Console.WriteLine("Number of messages after deleting: " + messages.Count);

Full code:
using Spire.Email;
using Spire.Email.Pop3;
using System;
namespace DeleteEmailMessages
{
class Program
{
static void Main(string[] args)
{
//Create a POP3 client
Pop3Client pop3 = new Pop3Client();
//Set host, authentication, port and connection protocol
pop3.Host = "outlook.office365.com";
pop3.Username = "LeonDavisLD@outlook.com";
pop3.Password = "password";
pop3.Port = 995;
pop3.EnableSsl = true;
//Connect the pop server
pop3.Connect();
//Get the number of messages before deleting message(s)
Pop3MessageInfoCollection messages = pop3.GetAllMessages();
Console.WriteLine("Number of messages before deleting: " + messages.Count);
//Delete an email message by its sequence number
pop3.DeleteMessage(2);
//Delete all messages
//pop3.DeleteAllMessages();
//Get the number of messages after deleting message(s)
messages = pop3.GetAllMessages();
Console.WriteLine("Number of messages after deleting: " + messages.Count);
}
}
}
Imports Spire.Email
Imports Spire.Email.Pop3
Namespace DeleteEmailMessages
Class Program
Private Shared Sub Main(args As String())
'Create a POP3 client
Dim pop3 As New Pop3Client()
'Set host, authentication, port and connection protocol
pop3.Host = "outlook.office365.com"
pop3.Username = "LeonDavisLD@outlook.com"
pop3.Password = "password"
pop3.Port = 995
pop3.EnableSsl = True
'Connect the pop server
pop3.Connect()
'Get the number of messages before deleting message(s)
Dim messages As Pop3MessageInfoCollection = pop3.GetAllMessages()
Console.WriteLine("Number of messages before deleting: " + messages.Count)
'Delete an email message by its sequence number
pop3.DeleteMessage(2)
'Delete all messages
'pop3.DeleteAllMessages();
'Get the number of messages after deleting message(s)
messages = pop3.GetAllMessages()
Console.WriteLine("Number of messages after deleting: " + messages.Count)
End Sub
End Class
End Namespace
WordArt is a feature in MS Word that allows you to insert colorful and stylish text into your document. Apart from that, it can also bend, stretch, or skew the shape of the text, which is a quick way to make the text stand out with special effects. In this article, you will learn how to programmatically insert WordArt in a Word document using Spire.Doc for .NET.
Install Spire.Doc for .NET
To begin with, you need to add the DLL files included in the Spire.Doc for .NET package as references in your .NET project. The DLL files can be either downloaded from this link or installed via NuGet.
PM> Install-Package Spire.Doc
Insert WordArt in Word
The ShapeType enumeration provided by Spire.Doc for .NET defines a variety of WordArt shape types whose names begin with "Text". In order to create a WordArt in Word, you need to initialize an instance of ShapeObject and specify the WordArt type and text content. The detailed steps are as follows:
- Create a Document instance.
- Add a section to the document using Document.AddSection() method, and then add a paragraph to the section using Section.AddParagraph() method.
- Append a shape to the paragraph and specify the shape size and type using Paragraph.AppendShape(float width, float height, ShapeType shapeType) method.
- Set the position of the shape using ShapeObject.VerticalPosition and ShapeObject.HorizontalPosition properties.
- Set the text of WordArt using WordArt.Text property.
- Set the fill color and stroke color of WordArt using ShapeObject.FillColor and ShapeObject.StrokeColor properties.
- Save the document to another file using Document.SaveToFile() method.
- C#
- VB.NET
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
namespace CreatWordArt
{
class Program
{
static void Main(string[] args)
{
//Create a Document instance
Document doc = new Document();
//Add a section
Section section = doc.AddSection();
//Add a paragraph
Paragraph paragraph = section.AddParagraph();
//Append a shape to the paragraph and specify the shape size and type
ShapeObject shape = paragraph.AppendShape(400, 150, ShapeType.TextDeflateBottom);
//Set the position of the shape
shape.VerticalPosition = 60;
shape.HorizontalPosition = 60;
//Set the text of WordArt
shape.WordArt.Text = "Create WordArt in Word";
//Set the fill color and stroke color of WordArt
shape.FillColor = System.Drawing.Color.Cyan;
shape.StrokeColor = System.Drawing.Color.DarkBlue;
//Save the document
doc.SaveToFile("CreateWordArt.docx", FileFormat.Docx2013);
}
}
}

Apply for a Temporary License
If you'd like to remove the evaluation message from the generated documents, or to get rid of the function limitations, please request a 30-day trial license for yourself.
This article illustrates how to get message contents such as from address, send to address, subject, date and the body of the message by using Spire.Email.
Code snippets of how to extract the message contents:
Step 1: Load the mail message.
MailMessage mail = MailMessage.Load("Sample.msg");
Step 2: Create a new instance of StringBuilder.
StringBuilder sb = new StringBuilder();
Step 3: Get the message contents as we want.
//get the From address
sb.AppendLine("From:");
sb.AppendLine(mail.From.Address);
//get the To address
sb.AppendLine("To:");
foreach (MailAddress toAddress in mail.To)
{
sb.AppendLine(toAddress.Address);
}
//get the date
sb.AppendLine("Date:");
sb.AppendLine(mail.Date.ToString());
//get the subject
sb.AppendLine("Subject:");
sb.AppendLine(mail.Subject);
//get the BodyText
sb.AppendLine("Message contents");
sb.AppendLine(mail.BodyText);
//get the BodyHtml
sb.AppendLine("BodyHtml");
sb.AppendLine(mail.BodyHtml);
Step 4: Write all contents in .txt
File.WriteAllText("ExtractMessageContents.txt", sb.ToString());
The extracted message contents in .txt file format.

Full codes:
using Spire.Email;
using System.IO;
using System.Text;
namespace ExtractMessage
{
class Program
{
static void Main(string[] args)
{
MailMessage mail = MailMessage.Load("Sample.msg");
StringBuilder sb = new StringBuilder();
sb.AppendLine("From:");
sb.AppendLine(mail.From.Address);
sb.AppendLine("To:");
foreach (MailAddress toAddress in mail.To)
{
sb.AppendLine(toAddress.Address);
}
sb.AppendLine("Date:");
sb.AppendLine(mail.Date.ToString());
sb.AppendLine("Subject:");
sb.AppendLine(mail.Subject);
sb.AppendLine("Message contents");
sb.AppendLine(mail.BodyText);
sb.AppendLine("BodyHtml");
sb.AppendLine(mail.BodyHtml);
File.WriteAllText("ExtractMessageContents.txt", sb.ToString());
}
}
}
Dim mail As MailMessage = MailMessage.Load("Sample.msg")
Dim sb As New StringBuilder()
sb.AppendLine("From:")
sb.AppendLine(mail.From.Address)
sb.AppendLine("To:")
For Each toAddress As MailAddress In mail.[To]
sb.AppendLine(toAddress.Address)
Next
sb.AppendLine("Date:")
sb.AppendLine(mail.[Date].ToString())
sb.AppendLine("Subject:")
sb.AppendLine(mail.Subject)
sb.AppendLine("Message contents")
sb.AppendLine(mail.BodyText)
sb.AppendLine("BodyHtml")
sb.AppendLine(mail.BodyHtml)
File.WriteAllText("ExtractMessageContents.txt", sb.ToString())
Sending bulk emails means that you can send a batch of emails to multiple recipients and they will not be able to determine the others you've sent the message to.
The following code snippets demonstrate how to send bulk emails using Spire.Email in C# and VB.NET.
Step 1: Create instances of MailMessage class and specify sender and recipients.
MailMessage message1 = new MailMessage("sender@e-iceblue.com", "recipient1@e-iceblue.com");
MailMessage message2 = new MailMessage("sender@e-iceblue.com", " recipient2@e-iceblue.com");
MailMessage message3 = new MailMessage("sender@e-iceblue.com", " recipient3@e-iceblue.com");
Step 2: Set the subject and body text of the messages.
message1.Subject = message2.Subject = message3.Subject = "Subject"; message1.BodyText = message2.BodyText = message3.BodyText = "This is body text.";
Step 3: Initialize an object of MailMessageCollection class and add the instances of MailMessage class into the object.
List msgs = new List(); msgs.Add(message1); msgs.Add(message2); msgs.Add(message3);
Step 4: Create a SmtpClient instance with host, port, username and password, and send batch of emails using SendSome method.
SmtpClient client = new SmtpClient();
client.Host = "smtp.outlook.com";
client.Port = 587;
client.Username = "sender@e-iceblue.com";
client.Password = "password";
client.ConnectionProtocols = ConnectionProtocols.Ssl;
client.SendSome(msgs);
Console.WriteLine("Message sent");
Full Code:
MailMessage message1 = new MailMessage("sender@e-iceblue.com", "recipient1@e-iceblue.com");
MailMessage message2 = new MailMessage("sender@e-iceblue.com", " recipient2@e-iceblue.com");
MailMessage message3 = new MailMessage("sender@e-iceblue.com", " recipient3@e-iceblue.com");
message1.Subject = message2.Subject = message3.Subject = "subject";
message1.BodyText = message2.BodyText = message3.BodyText = "This is body text.";
List msgs = new List();
msgs.Add(message1);
msgs.Add(message2);
msgs.Add(message3);
SmtpClient client = new SmtpClient();
client.Host = "smtp.outlook.com";
client.Port = 587;
client.Username = "sender@e-iceblue.com";
client.Password = "password";
client.ConnectionProtocols = ConnectionProtocols.Ssl;
client.SendSome(msgs);
Console.WriteLine("Message sent");
Dim message1 As New MailMessage("sender@e-iceblue.com", "recipient1@e-iceblue.com")
Dim message2 As New MailMessage("sender@e-iceblue.com", " recipient2@e-iceblue.com")
Dim message3 As New MailMessage("sender@e-iceblue.com", " recipient3@e-iceblue.com")
message1.Subject = InlineAssignHelper(message2.Subject, InlineAssignHelper(message3.Subject, "subject"))
message1.BodyText = InlineAssignHelper(message2.BodyText, InlineAssignHelper(message3.BodyText, "This is body text."))
Dim msgs As New List(Of MailMessage)()
msgs.Add(message1)
msgs.Add(message2)
msgs.Add(message3)
Dim client As New SmtpClient()
client.Host = "smtp.outlook.com"
client.Port = 587
client.Username = "sender@e-iceblue.com"
client.Password = "password"
client.ConnectionProtocols = ConnectionProtocols.Ssl
client.SendSome(msgs)
Console.WriteLine("Message sent")
This article illustrates how to get mailbox information such as the number of messages, the size of mailbox and the unique id of a specific message using Spire.Email component.
Detail steps:
Step 1: Create a pop3 client.
Pop3Client pop = new Pop3Client();
Step 2: Set host, authentication, port and connection protocol.
pop.Host = "outlook.office365.com"; pop.Username = "LeonDavisLD@outlook.com"; pop.Password = "password"; pop.Port = 995; pop.EnableSsl = true;
Step 3: Connect the pop server.
pop.Connect();
Step 4: Get information of mailbox.
//Get the number of messages
Console.WriteLine("Mailbox message count: " + pop.GetMessageCount());
//Get the size of mailbox
Console.WriteLine("Mailbox size: " + pop.GetSize() + " bytes");
//Get the unique id of the first message
Console.WriteLine("Message uid: " + pop.GetMessagesUid(1));
Screenshot:

Full code:
using System;
using Spire.Email.Pop3;
namespace Get_mailbox_information
{
class Program
{
static void Main(string[] args)
{
//Create a pop3 client
using (Pop3Client pop = new Pop3Client())
{
//Set host, authentication, port and connection protocol
pop.Host = "outlook.office365.com";
pop.Username = "LeonDavisLD@outlook.com";
pop.Password = "password";
pop.Port = 995;
pop.EnableSsl = true;
//Connect the pop server
pop.Connect();
//Get the number of messages
Console.WriteLine("Mailbox message count: " + pop.GetMessageCount());
//Get the size of mailbox
Console.WriteLine("Mailbox size: " + pop.GetSize() + " bytes");
//Get the unique id of the first message
Console.WriteLine("Message uid: " + pop.GetMessagesUid(1));
}
}
}
}
Imports Spire.Email.Pop3
Namespace Get_mailbox_information
Class Program
Private Shared Sub Main(args As String())
'Create a pop3 client
Using pop As New Pop3Client()
'Set host, authentication, port and connection protocol
pop.Host = "outlook.office365.com"
pop.Username = "LeonDavisLD@outlook.com"
pop.Password = "password"
pop.Port = 995
pop.EnableSsl = True
'Connect the pop server
pop.Connect()
'Get the number of messages
Console.WriteLine("Mailbox message count: " + pop.GetMessageCount())
'Get the size of mailbox
Console.WriteLine("Mailbox size: " + pop.GetSize() + " bytes")
'Get the unique id of the first message
Console.WriteLine("Message uid: " + pop.GetMessagesUid(1))
End Using
End Sub
End Class
End Namespace
Following code snippets demonstrate how to create, rename and delete a folder on mail server by using ImapClient class in Spire.Email.
Create a mail folder
using Spire.Email;
using Spire.Email.IMap;
using System;
namespace CreateMailFolder
{
class Program
{
static void Main(string[] args)
{
//create an imapclient with username, password and host
ImapClient client = new ImapClient();
client.Username = "test@outlook.com";
client.Password = "password";
client.Host = "outlook.office365.com";
//specify the port
client.Port = 143;
//specify the connection protocol
client.ConnectionProtocols = ConnectionProtocols.Ssl;
//connect to imap mail server
client.Connect();
//create a folder named ‘e-iceblue’
client.CreateFolder("e-iceblue");
Console.WriteLine("Done!");
}
}
}

Rename a mail folder
using Spire.Email;
using Spire.Email.IMap;
using System;
namespace RenameMailFolder
{
class Program
{
static void Main(string[] args)
{
//create an imapclient with username, password and host
ImapClient client = new ImapClient();
client.Username = "test@outlook.com";
client.Password = "password";
client.Host = "outlook.office365.com";
//specify the port
client.Port = 143;
//specify the connection protocol
client.ConnectionProtocols = ConnectionProtocols.Ssl;
//connect to imap mail server
client.Connect();
//rename an existing folder with a new name
client.RenameFolder("e-iceblue", "E-ICEBLUE");
Console.WriteLine("Done!");
}
}

Delete a mail folder
using Spire.Email;
using Spire.Email.IMap;
using System;
namespace DeleteMailFolder
{
class Program
{
static void Main(string[] args)
{
//create an imapclient with username, password and host
ImapClient client = new ImapClient();
client.Username = "test@outlook.com";
client.Password = "password";
client.Host = "outlook.office365.com";
//specify the port
client.Port = 143;
//specify the connection protocol
client.ConnectionProtocols = ConnectionProtocols.Ssl;
//connect to imap mail server
client.Connect();
//delete an existing folder
client.DeleteFolder("E-ICEBLUE");
Console.WriteLine("Done!");
}
}
}

This article demonstrates how to extract the attachment from an email message and delete the attachment via Spire.Email in C# and VB.NET. Spire.Email supports to work with MSG, EML, EMLX, MHTML, PST, OST and TNEF email file formats. On this article we use .msg message format for example.
Firstly, please view the sample email message with attachments:

How to extract the attachment from an Email message:
using Spire.Email;
using System.IO;
namespace ExtractAttachment
{
class Program
{
static void Main(string[] args)
{
//Load the mail message from file
MailMessage mail = MailMessage.Load("Test.msg");
//Create a folder named Attachments
if (!Directory.Exists("Attachments"))
{
Directory.CreateDirectory("Attachments");
}
foreach (Attachment attach in mail.Attachments)
{
//To get and save the attachment
string filePath = string.Format("Attachments\\{0}", attach.ContentType.Name);
if (File.Exists(filePath))
{
File.Delete(filePath);
}
FileStream fs = File.Create(filePath);
attach.Data.CopyTo(fs);
}
}
}
}
Imports Spire.Email
Imports System.IO
Namespace ExtractAttachment
Class Program
Private Shared Sub Main(args As String())
'Load the mail message from file
Dim mail As MailMessage = MailMessage.Load("Test.msg")
'Create a folder named Attachments
If Not Directory.Exists("Attachments") Then
Directory.CreateDirectory("Attachments")
End If
For Each attach As Attachment In mail.Attachments
'To get and save the attachment
Dim filePath As String = String.Format("Attachments\{0}", attach.ContentType.Name)
If File.Exists(filePath) Then
File.Delete(filePath)
End If
Dim fs As FileStream = File.Create(filePath)
attach.Data.CopyTo(fs)
Next
End Sub
End Class
End Namespace

How to delete the attachment from an Email message:
using Spire.Email;
namespace DeleteAttachment
{
class Program
{
static void Main(string[] args)
{
MailMessage mail = MailMessage.Load("Test.msg");
// Delete the attachment by index
mail.Attachments.RemoveAt(0);
// Delete the attachment by attachment name
for (int i = 0; i < mail.Attachments.Count; i++)
{
Attachment attach = mail.Attachments[i];
if (attach.ContentType.Name == "logo.png")
{
mail.Attachments.Remove(attach);
}
}
mail.Save("HasDeletedAttachment.msg", MailMessageFormat.Msg);
}
}
}
Imports Spire.Email
Namespace DeleteAttachment
Class Program
Private Shared Sub Main(args As String())
Dim mail As MailMessage = MailMessage.Load("Test.msg")
' Delete the attachment by index
mail.Attachments.RemoveAt(0)
' Delete the attachment by attachment name
For i As Integer = 0 To mail.Attachments.Count - 1
Dim attach As Attachment = mail.Attachments(i)
If attach.ContentType.Name = "logo.png" Then
mail.Attachments.Remove(attach)
End If
Next
mail.Save("HasDeletedAttachment.msg", MailMessageFormat.Msg)
End Sub
End Class
End Namespace

Spire.Email allows receiving email messages with POP3 client and IMAP client. The following examples demonstrate how to retrieve an email using both POP3 and IMAP clients and save it to disk in C# and VB.NET.
Use POP3 client
using Spire.Email;
using Spire.Email.Pop3;
using System;
using System.Globalization;
namespace ReceiveAndSaveEmailByUsingPOP3client
{
class Program
{
static void Main(string[] args)
{
//Create a POP3 client
Pop3Client pop = new Pop3Client();
//Set host, username, password etc. for the client
pop.Host = "outlook.office365.com";
pop.Username = "LeonDavisLD@outlook.com";
pop.Password = "password";
pop.Port = 995;
pop.EnableSsl = true;
//Connect the server
pop.Connect();
//Get the first message by its sequence number
MailMessage message = pop.GetMessage(1);
//Parse the message
Console.WriteLine("------------------ HEADERS ---------------");
Console.WriteLine("From : " + message.From.ToString());
Console.WriteLine("To : " + message.To.ToString());
Console.WriteLine("Date : " + message.Date.ToString(CultureInfo.InvariantCulture));
Console.WriteLine("Subject: " + message.Subject);
Console.WriteLine("------------------- BODY -----------------");
Console.WriteLine(message.BodyText);
Console.WriteLine("------------------- END ------------------");
//Save the message to disk using its subject as file name
message.Save(message.Subject + ".eml", MailMessageFormat.Eml);
Console.WriteLine("Message Saved.");
Console.ReadKey();
}
}
}
Imports Spire.Email
Imports Spire.Email.Pop3
Imports System.Globalization
Namespace ReceiveAndSaveEmailByUsingPOP3client
Class Program
Private Shared Sub Main(args As String())
'Create a POP3 client
Dim pop As New Pop3Client()
'Set host, username, password etc. for the client
pop.Host = "outlook.office365.com"
pop.Username = "LeonDavisLD@outlook.com"
pop.Password = "password"
pop.Port = 995
pop.EnableSsl = True
'Connect the server
pop.Connect()
'Get the first message by its sequence number
Dim message As MailMessage = pop.GetMessage(1)
'Parse the message
Console.WriteLine("------------------ HEADERS ---------------")
Console.WriteLine("From : " + message.From.ToString())
Console.WriteLine("To : " + message.[To].ToString())
Console.WriteLine("Date : " + message.[Date].ToString(CultureInfo.InvariantCulture))
Console.WriteLine("Subject: " + message.Subject)
Console.WriteLine("------------------- BODY -----------------")
Console.WriteLine(message.BodyText)
Console.WriteLine("------------------- END ------------------")
'Save the message to disk using its subject as file name
message.Save(message.Subject + ".eml", MailMessageFormat.Eml)
Console.WriteLine("Message Saved.")
Console.ReadKey()
End Sub
End Class
End Namespace
Use IMAP client
using Spire.Email;
using Spire.Email.IMap;
using System;
using System.Globalization;
namespace ReceiveAndSaveEmailByUsingIMAPclient
{
class Program
{
static void Main(string[] args)
{
//Create an IMAP client
ImapClient imap = new ImapClient();
// Set host, username, password etc. for the client
imap.Host = "outlook.office365.com";
imap.Port = 143;
imap.Username = "LeonDavisLD@outlook.com";
imap.Password = "password";
imap.ConnectionProtocols = ConnectionProtocols.Ssl;
//Connect the server
imap.Connect();
//Select Inbox folder
imap.Select("Inbox");
//Get the first message by its sequence number
MailMessage message = imap.GetFullMessage(1);
//Parse the message
Console.WriteLine("------------------ HEADERS ---------------");
Console.WriteLine("From : " + message.From.ToString());
Console.WriteLine("To : " + message.To.ToString());
Console.WriteLine("Date : " + message.Date.ToString(CultureInfo.InvariantCulture));
Console.WriteLine("Subject: " + message.Subject);
Console.WriteLine("------------------- BODY -----------------");
Console.WriteLine(message.BodyText);
Console.WriteLine("------------------- END ------------------");
//Save the message to disk using its subject as file name
message.Save(message.Subject + ".eml", MailMessageFormat.Eml);
Console.WriteLine("Message Saved.");
Console.ReadKey();
}
}
}
Imports Spire.Email
Imports Spire.Email.IMap
Imports System.Globalization
Namespace ReceiveAndSaveEmailByUsingIMAPclient
Class Program
Private Shared Sub Main(args As String())
'Create an IMAP client
Dim imap As New ImapClient()
' Set host, username, password etc. for the client
imap.Host = "outlook.office365.com"
imap.Port = 143
imap.Username = "LeonDavisLD@outlook.com"
imap.Password = "password"
imap.ConnectionProtocols = ConnectionProtocols.Ssl
'Connect the server
imap.Connect()
'Select Inbox folder
imap.[Select]("Inbox")
'Get the first message by its sequence number
Dim message As MailMessage = imap.GetFullMessage(1)
'Parse the message
Console.WriteLine("------------------ HEADERS ---------------")
Console.WriteLine("From : " + message.From.ToString())
Console.WriteLine("To : " + message.[To].ToString())
Console.WriteLine("Date : " + message.[Date].ToString(CultureInfo.InvariantCulture))
Console.WriteLine("Subject: " + message.Subject)
Console.WriteLine("------------------- BODY -----------------")
Console.WriteLine(message.BodyText)
Console.WriteLine("------------------- END ------------------")
'Save the message to disk using its subject as file name
message.Save(message.Subject + ".eml", MailMessageFormat.Eml)
Console.WriteLine("Message Saved.")
Console.ReadKey()
End Sub
End Class
End Namespace
Screenshot:
