Sends user-defined command to the server.
public void SendCommand(
string command,
object[] parameters
)
Public Sub SendCommand( _
ByVal command As String, _
ByVal parameters As Object() _
)
public:
void SendCommand(
String^ command,
array<Object>^ parameters
);
Parameters
- command
- User-defined command text (without line terminator) (eg. "CAPABILITY").
- parameters
- List of parameters. Allowed types are String and a byte array.
Return Value
The ID (tag in IMAP4 terms) of the message, or a null reference (Nothing in Visual Basic) if server does not support it.
Remarks
After calling this method. You need to call the ReadResponse method to read the response of the server for the command you have sent.
If the specified parameters are string, they are sent without conversion. Byte array parameters are sent as literals - binary blocks of data.
Having good understanding of IMAP protocol is strongly recommended when using this method.
Shows how to use the SendCommand and ReadResponse methods.
using System;
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);
// Select 'INBOX' mailbox.
client.Select("INBOX");
// Send a command.
client.SendCommand("CAPABILITY");
// Read response from the server.
ImapResponse response = client.ReadResponse();
// Print out the response.
Console.WriteLine("Raw response: " + response.RawResponse);
foreach (ImapResponseLine line in response.GetLines())
{
Console.WriteLine("Response line: Code:{0}, Desc: {1}.", line.Code, line.Description);
}
// 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)
' Select 'INBOX' mailbox.
client.Select("INBOX")
' Send a command.
client.SendCommand("CAPABILITY")
' Read response from the server.
Dim response As ImapResponse = client.ReadResponse()
' Print out the response.
Console.WriteLine("Raw response: " & response.RawResponse)
For Each line As ImapResponseLine In response.GetLines()
Console.WriteLine("Response line: Code:{0}, Desc: {1}.", line.Code, line.Description)
Next line
' Close the connection.
client.Disconnect()