.net - number - ssl pop mail port
Recomendaciones para un componente.NET para acceder a una bandeja de entrada de correo electrónico (11)
¿Qué hay de WCF? Es gratis.
Si tiene un servidor de Exchange: http://msdn.microsoft.com/en-us/library/bb397812.aspx
un ejemplo para pop3: http://bartdesmet.net/blogs/bart/archive/2006/09/13/4417.aspx
Se me ha pedido que escriba un servicio de Windows en C # para supervisar periódicamente una bandeja de entrada de correo electrónico e insertar los detalles de los mensajes recibidos en una tabla de la base de datos.
Mi instinto es hacer esto a través de POP3 y, por supuesto, Google para el "componente .NET POP3" produce innumerables resultados (ok, 146,000).
¿Alguien ha hecho algo similar antes y puede recomendar un componente decente que no rompa el banco (unos cientos de dólares como máximo)?
¿Habría algún beneficio al usar IMAP en lugar de POP3?
Con el protocolo IMAP puede acceder a subcarpetas y establecer el estado del mensaje (visto / no visto), también puede usar la función IDLE para notificaciones instantáneas.
Mail.dll incluye componentes POP3 , IMAP , SMTP con soporte SSL y un potente analizador MIME:
using(Imap imap = new Imap())
{
imap.Connect("imap.server.com"); // or ConnectSSL for SSL
imap.Login("user", "password");
imap.SelectInbox();
List<long> uids = imap.Search(Flag.Unseen);
foreach (long uid in uids)
{
IMail mail = new MailBuilder()
.CreateFromEml(imap.GetMessageByUID(uid));
Console.WriteLine(mail.Subject);
}
imap.Close();
}
Tenga en cuenta que este es un producto comercial que he creado.
Puede descargarlo en https://www.limilabs.com/mail
El correo C # cuesta $ 0 pero también tiene licencia GNU GPL, así que asegúrese de que todo esté bien.
Es posible que desee comprobar nuestro componente Rebex Mail . Incluye los protocolos IMAP , SMTP , POP3 y el analizador S / MIME .
El POP3
no tiene un concepto de mensajes "no leídos" ni búsqueda de mensajes que coincidan con criterios específicos. POP3
simplemente devuelve todos los mensajes en su bandeja de entrada.
Con IMAP
, puede indicar al servidor IMAP que le envíe mensajes recién leídos, mensajes que llegaron desde el momento especificado, mensajes de un usuario específico, etc. No tiene que descargarlo todo al cliente y filtrar allí.
El siguiente código muestra cómo descargar mensajes no leídos del servidor Rebex.Net.Imap
utilizando la clase Rebex.Net.Imap
.
// create client, connect and log in
Imap client = new Imap();
client.Connect("imap.example.org");
client.Login("username", "password");
// select folder
client.SelectFolder("Inbox");
// get message list - envelope headers
ImapMessageCollection messages = client.Search
(
ImapSearchParameter.HasFlagsNoneOf(ImapMessageFlags.Seen)
);
// display info about each message
Console.WriteLine("UID | From | To | Subject");
foreach (ImapMessageInfo message in messages)
{
Console.WriteLine(
"{0} | {1} | {2} | {3}",
message.UniqueId,
message.From,
message.To,
message.Subject);
}
// disconnect
client.Disconnect();
Ejemplo de combinación de criterios de búsqueda múltiples a continuación. Esto devolverá mensajes del último año de más de 100 KB.
ImapMessageCollection messages = client.Search
(
ImapSearchParameter.Arrived(DateTime.Now.AddYears(-1), DateTime.Now),
ImapSearchParameter.Size(1024 * 100, Int32.MaxValue)
);
Puede descargar la versión de prueba de rebex.net/secure-mail.net/download.aspx
IMAPX2 es el mejor. Usando IMAP puedes controlar las carpetas en un servidor de correo, algo que no podrías hacer con POP. IMAPX es un código fuente abierto que puede examinar y es de uso gratuito.
IMAPX es directo y confiable.
Puede hacerlo utilizando Objetos MailBee.NET: http://www.afterlogic.com/products/net-email-components
Si bien recomendaría utilizar IMAP de hecho, sobre todo porque ofrece soporte IDLE mencionado aquí, usted podría hacer lo mismo con POP3. Hay una breve descripción de ambos enfoques, y una muestra completa para el escenario IMAP IDLE:
Tenga en cuenta que estoy afiliado a AfterLogic, y con gusto lo ayudaremos si necesita ayuda, consulte la opción Solicitar ayuda en nuestro sitio web.
Recomendaría AdvancedIntellect . Hay componentes para POP3 e IMAP (ASPNetPOP3 y ASPNetIMAP). Buena calidad y apoyo muy receptivo: recuerdo haber recibido respuestas a mis preguntas en un fin de semana.
Recomiendo Chilkat . Tienen componentes bastante estables, y puede obtener su componente de correo electrónico a un precio tan bajo como $ 99 para un solo desarrollador. Personalmente, creo que ir con todo el paquete de componentes es una mejor oferta, ya que solo cuesta $ 289 y viene con muchos componentes útiles. No estoy afiliado a ellos de ninguna manera, aunque probablemente suene como yo.
Si usa una implementación de código abierto POP3 o algo libremente disponible, tendrá acceso para modificar el código y expandirlo en la dirección necesaria. Un rápido Google dio como resultado este código C # POP3 de Code Project para recuperar mensajes.
Hay algo de poder sobre rodar el tuyo, o al menos extenderlo.
Uso SharpMimeTools de código libre en mi aplicación, BugTracker.NET. Ha sido muy confiable:
http://anmar.eu.org/projects/sharpmimetools/
Vea los archivos POP3Client.cs, POP3Main.cs e insert_bug.aspx
Lumisoft es de código abierto e incluye clientes IMAP y POP (entre otras cosas). Los he estado utilizando durante años sin problemas.