Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using MailKit.Net.Pop3;
- using MailKit.Net.Smtp;
- using MimeKit;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace MailSender
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- Thread recieverThread = new Thread(() =>
- {
- using (var client = new Pop3Client())
- {
- // For demo-purposes, accept all SSL certificates (in case the server supports STARTTLS)
- client.ServerCertificateValidationCallback = (s, c, h, e) => true;
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add($"Connecting to pop3 server");
- }));
- client.Connect("pop.gmail.com", 995, true);
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add((client.IsConnected ? "Connected" : "Not connected"));
- listBox1.Items.Add("Logging in");
- }));
- client.Authenticate("login", "password");
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add((client.IsAuthenticated ? "Authenticated" : "Not authenticated"));
- }));
- // Получение сообщения по id
- /*MimeMessage curMessage = client.GetMessage(5);
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add($"{curMessage.Date} {curMessage.Subject}");
- }));*/
- // Получение всех сообщений
- //for (int i = 0; i < client.Count; i++)
- /*for (int i = client.Count - 1; i > 0; i--)
- {
- var message = client.GetMessage(i);
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add($"Got message. Subject: {message.Subject}");
- }));
- }
- */
- // Помечение сообщения для удаления
- var message = client.GetMessage(1);
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add($"Помечаем сообщение с темой {message.Subject} для удаления");
- }));
- client.DeleteMessage(1);
- Invoke((MethodInvoker)(() =>
- {
- listBox1.Items.Add($"Сообщение помечено для удаления");
- }));
- client.Disconnect(true);
- }
- Thread.Sleep(1000);
- });
- recieverThread.Start();
- }
- private void button1_Click(object sender, EventArgs e)
- {
- var message = new MimeMessage();
- message.From.Add(new MailboxAddress(textBox1.Text, ""));
- message.To.Add(new MailboxAddress(textBox4.Text, textBox2.Text));
- message.Subject = textBox3.Text;
- message.Body = new TextPart("plain")
- {
- Text = richTextBox1.Text
- };
- using (var client = new SmtpClient())
- {
- client.ServerCertificateValidationCallback = (s, c, h, t) => true;
- listBox1.Items.Add("Connecting to smtp server");
- client.Connect("smtp.gmail.com", 465, true);
- listBox1.Items.Add((client.IsConnected ? "Connected" : "Not connected"));
- listBox1.Items.Add("Logging in");
- client.Authenticate("loging", "password");
- listBox1.Items.Add((client.IsAuthenticated ? "Authenticated" : "Not authenticated"));
- listBox1.Items.Add("Sending message");
- client.Send(message);
- listBox1.Items.Add("Message sent");
- client.Disconnect(true);
- }
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- listBox1.Items.Clear();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement