Как передать файлы по мейлу, mail, передача файлов без ftp сервера, некрупный файл, из определённой папки C#
Формулировка задачи:
Здравствуйте, подскажите пожалуйста как отправить файл из конкретной папки через mail при нажатии на кнопку в программе, чтобы отправлялся с одной моей почты на другую. вот мой код для отправки писем, без файлов:
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- using System.Net;
- using System.Net.Mail;
- namespace GraphMail
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void button1_Click(object sender, EventArgs e)
- {
- string tema, messageBody;
- const string login = "Мой меил", password = "пароль от мейла", toPerson = "кому";
- tema = textBox2.Text;
- messageBody = textBox3.Text;
- SendMail(login, password, toPerson, tema, messageBody);
- }
- private void SendMail(string login, string password, string toPerson, string tema, string messageBody)
- {
- //smtp сервер
- string smtpHost = "smtp.mail.ru";
- //smtp порт
- int smtpPort = 25;
- //создаем подключение
- SmtpClient client = new SmtpClient(smtpHost, smtpPort);
- client.Credentials = new NetworkCredential(login, password);
- //От кого письмо
- string from = login + "@mail.ru";
- //Кому письмо
- string to = toPerson + "@mail.ru";
- //Создаем сообщение
- MailMessage mess = new MailMessage(from, to, tema, messageBody);
- try
- {
- client.Send(mess);
- MessageBox.Show("Message send");
- }
- catch (Exception ex)
- {
- MessageBox.Show(ex.ToString());
- }
- }
- }
- }
Решение задачи: «Как передать файлы по мейлу, mail, передача файлов без ftp сервера, некрупный файл, из определённой папки C#»
textual
Листинг программы
- try
- {
- // добавляю вложение в мое сообщение, в примере, это файл, который я забираю
- // из текущего каталога приложения.
- var b = File.ReadAllBytes(«c:\frommail\attachment.txt»);
- var stream = new MemoryStream(b);
- // создаю вложение, указывая поток данных, имя вложения, которое будет отображаться
- // почтовым клиентом и тип контента,
- // чтобы почтовый клиент правильно определил тип документа.
- // Вот здесь можно посмотреть возможные типы контента MIME:
- // [url]http://www.iana.org/assignments/media-types/text/index.html[/url]
- var attachment = new Attachment(stream, «attachement.txt», «text/plain»);
- message.Attachments.Add(attachment); // присоединяю вложение
- // отправляю письмо синхронно, можно это также сделать асинхронно.
- client.Send(message);
- Console.WriteLine(«Сообщение выслано»);
- }
- catch (Exception exc)
- {
- Console.WriteLine(exc);
- }
- finally
- {
- client.Dispose();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д