Quiero hacer en modo consola C# un programa que solo lee y muestre en pantalla, el último email recibido, es decir, me llega un email y lee el mensaje, a parte del título del mensaje.
¿Cómo se hace?
Por ahora el que funciona muy bien y es simple, es el de enviar mensajes pero no tiene nada que ver.
Código C++:
Ver original
using System; using System.Net.Mail; using System.Text; using System.Net; namespace Enviar_e_mail_Consola_04_cs { class Program { static void Main(string[] args) { string usuario, contraseña, destinatario, asunto, mensaje; // Título de la ventana. Console.Title = "Enviar e-mail con Consola C#"; // Tamaño ventana consola. Console.WindowWidth = 80; // X. Ancho. Console.WindowHeight = 40; // Y. Alto. Console.WriteLine("\t\t----------------------------------------"); Console.WriteLine("\t\t\tEnviar Correo Electrónico"); Console.WriteLine("\t\t----------------------------------------"); try { Console.WriteLine("\n"); Console.Write("\t\tIngresar tu correo electrónico: "); usuario = Console.ReadLine(); Console.Write("\t\tIntroducir contraseña: "); contraseña = LeerPassword(); Console.Write("\t\tDestinatario: "); destinatario = Console.ReadLine(); Console.Write("\t\tAsunto: "); asunto = Console.ReadLine(); Console.Write("\t\tMensaje: "); mensaje = Console.ReadLine(); MailMessage correo = new MailMessage(usuario, destinatario, asunto, mensaje); SmtpClient servidor = new SmtpClient("smtp.gmail.com") { Port = 587 }; NetworkCredential credenciales = new NetworkCredential(usuario, contraseña); servidor.Credentials = credenciales; servidor.EnableSsl = true; Console.WriteLine("\t\tEnviando correo..."); servidor.Send(correo); Console.WriteLine("\t\tCorreo enviado satisfactoriamente."); correo.Dispose(); Console.ReadKey(); } catch (Exception ex) { Console.WriteLine("\t\t" + ex.Message); Console.WriteLine("\t\tNo se ha enviado el correo."); Console.ReadKey(); } } // A la hora de introducir la contraseña, se sustituye por asterístos (*) en pantalla. public static string LeerPassword() { ConsoleKeyInfo cki; StringBuilder sb = new StringBuilder(); int cont = 0; do { cki = Console.ReadKey(true); if (cki.Key != ConsoleKey.Enter) { sb.Append(cki.KeyChar); if (cont < 4) Console.Write("*"); cont++; } else break; } while (true); Console.WriteLine(); return sb.ToString(); } } }
Este código es para que se hagan una idea de como puede ser.
Saludos.