An important aspect of the IMAP protocol is the concept of folders. Folders on the server are used to "organize" messages in a way that is functionally equivalent to local folders. Imap class provides a number of convenient methods to work with Imap folder such as CreateFolder, DeleteFolder, GetFolderInfo, ListFolders, Select, and Deselect.
To create a new mailbox, call the CreateFolder method. You only need to pass the mailbox name to the method.
The following steps will help you to do that:
Creating a new Folder
- Add using directives to your code to create aliases for existing namespaces and avoid having to type the fully qualified type names. The code looks similar to the following:
using ComponentPro.Net;
using ComponentPro.Net.Mail;
Imports ComponentPro.Net
Imports ComponentPro.Net.Mail
- Create a new instance of the Imap class.
- Now you can connect to the IMAP server with Connect methods. The code looks similar to the following:
// IMAP server information.
const string serverName = "myserver";
const string user = "name@domain.com";
const string password = "mytestpassword";
const int port = 993;
const SslSecurityMode securityMode = SslSecurityMode.Implicit;
// Create a new instance of the Imap class.
Imap client = new Imap();
// Connect to the server.
client.Connect(serverName, port, securityMode);
' IMAP server information.
Const serverName As String = "myserver"
Const user As String = "name@domain.com"
Const password As String = "mytestpassword"
Const port As Integer = 993
Const securityMode As SslSecurityMode = SslSecurityMode.Implicit
' Create a new instance of the Imap class.
Dim client As New Imap()
' Connect to the server.
client.Connect(serverName, port, securityMode)
- Use your user name and password to login with Authenticate methods. The code looks similar to the following:
// Login to the server.
client.Authenticate(user, password);
' Login to the server.
client.Authenticate(user, password)
- Now pass the mailbox name to the CreateFolder method. The code looks similar to the following:
// Create a new mailbox named 'My Mybox' in the root folder.
client.CreateFolder("My Mailbox");
' Create a new mailbox named 'My Mybox' in the root folder.
client.CreateFolder("My Mailbox")
- After completing your work, call the Disconnect method to close the IMAP session.
Final example code
using ComponentPro.Net;
using ComponentPro.Net.Mail;
...
// IMAP server information.
const string serverName = "myserver";
const string user = "name@domain.com";
const string password = "mytestpassword";
const int port = 993;
const SslSecurityMode securityMode = SslSecurityMode.Implicit;
// Create a new instance of the Imap class.
Imap client = new Imap();
// Connect to the server.
client.Connect(serverName, port, securityMode);
// Login to the server.
client.Authenticate(user, password);
// Create a new mailbox named 'My Mybox' in the root folder.
client.CreateFolder("My Mailbox");
// Close the connection.
client.Disconnect();
Imports ComponentPro.Net
Imports ComponentPro.Net.Mail
...
' IMAP server information.
Const serverName As String = "myserver"
Const user As String = "name@domain.com"
Const password As String = "mytestpassword"
Const port As Integer = 993
Const securityMode As SslSecurityMode = SslSecurityMode.Implicit
' Create a new instance of the Imap class.
Dim client As New Imap()
' Connect to the server.
client.Connect(serverName, port, securityMode)
' Login to the server.
client.Authenticate(user, password)
' Create a new mailbox named 'My Mybox' in the root folder.
client.CreateFolder("My Mailbox")
' Close the connection.
client.Disconnect()