コード例 #1
0
        public void  SendMessages(string header, string body)
        {
            foreach (string mail in listStrMails)
            {
                using (MailMessage mm = new MailMessage(VariableClass.fromEmail, mail))
                {
                    mm.Subject    = header;
                    mm.Body       = body;
                    mm.IsBodyHtml = false;

                    using (SmtpClient sc = new SmtpClient(VariableClass.smtpEmail, VariableClass.smtpPort))
                    {
                        sc.EnableSsl   = true;
                        sc.Credentials = new NetworkCredential(VariableClass.fromEmail, strPassword);
                        try
                        {
                            sc.Send(mm);
                            SendEndWindow sew = new SendEndWindow();
                            sew.Show();
                        }
                        catch (Exception ex)
                        {
                            WindowEr err = new WindowEr();
                            err.ErrorMessage("Невозможно отправить письмо" + ex.ToString());
                            err.Show();
                        }
                    }
                }
            }
        }
コード例 #2
0
 public void StartMailing(IQueryable <Emails> emails)
 {
     foreach (var mail in emails)
     {
         // Используем using, чтобы гарантированно удалить объект MailMessage после использования
         using (MailMessage mm = new MailMessage(_senderEmail, mail.Email))
         {
             // Формируем письмо
             mm.Subject    = mail.Name;     // Заголовок письма
             mm.Body       = "Hello world"; // Тело письма
             mm.IsBodyHtml = false;         // Не используем html в теле письма
                                            // Авторизуемся на smtp-сервере и отправляем письмо
             using (SmtpClient sc = new SmtpClient(_hostName, _port))
             {
                 sc.EnableSsl   = true;
                 sc.Credentials = new NetworkCredential(_senderEmail, _password);
                 try
                 {
                     sc.Send(mm);
                 }
                 catch (Exception ex)
                 {
                     SendEndWindow sew = new SendEndWindow("Невозможно отправить письмо " + ex.ToString());
                     sew.ISendEnd.Foreground = new SolidColorBrush(Color.FromRgb(255, 0, 0));
                     sew.ISendEnd.FontSize   = 11;
                     sew.ShowDialog();
                 }
             }
         }
     }
 }
コード例 #3
0
 public EmailSendServiceClass()
 {
     listStrMails = new List <string> {
         "*****@*****.**", "*****@*****.**"
     };
     sendEndWindow = new SendEndWindow();
 }
コード例 #4
0
        private void BtnSendEmail_OnClick(object sender, RoutedEventArgs e)
        {
            string        res = sendService.SendMsg(passwordBox.Password, tbSubject.Text, tbBody.Text);
            SendEndWindow sew = new SendEndWindow(res);

            sew.ShowDialog();
        }
コード例 #5
0
 public void StartMailing(string strPassword, string theme, string message)
 {
     foreach (string mail in _listStrMails)
     {
         // Используем using, чтобы гарантированно удалить объект MailMessage после использования
         using (MailMessage mm = new MailMessage(_senderEmail, mail))
         {
             // Формируем письмо
             mm.Subject    = theme;   // Заголовок письма
             mm.Body       = message; // Тело письма
             mm.IsBodyHtml = false;   // Не используем html в теле письма
                                      // Авторизуемся на smtp-сервере и отправляем письмо
                                      // Оператор using гарантирует вызов метода Dispose, даже если при вызове
                                      // методов в объекте происходит исключение.
             using (SmtpClient sc = new SmtpClient(_hostName, _port))
             {
                 sc.EnableSsl   = true;
                 sc.Credentials = new NetworkCredential(_senderEmail, strPassword);
                 try
                 {
                     sc.Send(mm);
                 }
                 catch (Exception ex)
                 {
                     SendEndWindow sew = new SendEndWindow("Невозможно отправить письмо " + ex.ToString());
                     sew.ISendEnd.Foreground = new SolidColorBrush(Color.FromRgb(255, 0, 0));
                     sew.ISendEnd.FontSize   = 20;
                     sew.ShowDialog();
                 }
             }
         } //using (MailMessage mm = new MailMessage("*****@*****.**", mail))
     }
 }
コード例 #6
0
        /// <summary>
        /// Отправка сразу
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            if (ValidateMessage() == false)
            {
                return;
            }

            // c использованием библиотеки
            //EmailSenderLib.EmailSendServiceClass essc =
            //    new EmailSenderLib.EmailSendServiceClass(cbSenderSelect.Text, cbSenderSelect.SelectedValue.ToString(),
            //                                cbSmtpSelect.Text, (int)cbSmtpSelect.SelectedValue);

            // в EmailSendServiceClass требуется использовать класс Emails. Но этот класс есть и в текущем приложении, и в библиотеке,
            //  в связи с чем возникает конфилкт имен. Чтобы использовать библиотеку в этом приложении, надо еще везде заменить Emails класс
            //  текущего приложения на EmailSenderLib.Emails класс библиотеки, но это как-то неудобно и рабочее приложение не хочется
            //  лишний раз трогать. (Но можно было бы описать интерфейс, но я не успеваю так быстро схватывать материал).


            EmailSendServiceClass essc =
                new EmailSendServiceClass(cbSenderSelect.Text, cbSenderSelect.SelectedValue.ToString(),
                                          cbSmtpSelect.Text, (int)cbSmtpSelect.SelectedValue);

            essc.StartMailing((IQueryable <Emails>)dgEmails.ItemsSource);

            SendEndWindow sew = new SendEndWindow("Работа завершена");

            sew.ShowDialog();
        }
コード例 #7
0
        /// <summary>
        /// Показ окна "Работа завершена"
        /// </summary>
        void ShowSendEndWindow()
        {
            SendEndWindow sew = new SendEndWindow();

            sew.Owner = this;
            sew.ShowDialog();
        }
コード例 #8
0
        private void btnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            List <string> listStrMails = new List <string> {
                "*****@*****.**", "*****@*****.**"
            };
            string strPassword = passwordBox.Password;

            foreach (string mail in listStrMails)
            {
                using (MailMessage mm = new MailMessage("*****@*****.**", mail))
                {
                    mm.Subject    = "тестовое письмо";
                    mm.Body       = "Mail Body";
                    mm.IsBodyHtml = false;
                    using (SmtpClient sc = new SmtpClient("mielecas01.miele.net", 25))
                    {
                        sc.EnableSsl   = false;
                        sc.Credentials = new NetworkCredential("*****@*****.**", strPassword);
                        try
                        {
                            sc.Send(mm);
                            MessageBox.Show("Письмо на адрес " + mail + " отправлено");
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show(ex.ToString());
                        }
                    }
                }
            }
            //MessageBox.Show("работа завершена");
            SendEndWindow sew = new SendEndWindow();

            sew.Show();
        }
コード例 #9
0
        private void btnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            var listStrMails = new List <string> {
                "*****@*****.**"
            };
            string strPassword = passwordBox.Password;

            foreach (string mail in listStrMails)
            {
                using (MailMessage mm = new MailMessage("*****@*****.**", mail))
                {
                    mm.Subject    = "Hello from C#";
                    mm.Body       = "Hello, world!";
                    mm.IsBodyHtml = false;
                    using (SmtpClient sc = new SmtpClient("smtp.yandex.ru", 25))
                    {
                        sc.EnableSsl   = true;
                        sc.Credentials = new NetworkCredential("*****@*****.**", strPassword);
                        try
                        {
                            sc.Send(mm);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Невозможно отправить письмо " + ex.ToString());
                        }
                    }
                }
            }
            SendEndWindow sew = new SendEndWindow();

            sew.ShowDialog();
        }
コード例 #10
0
        private void btnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            EmailSendServiceClass emailSendServiceClass = new EmailSendServiceClass(new NetworkCredential {
                UserName = HelperClass.SenderEmail, SecurePassword = passwordBox.SecurePassword
            });

            //Добавляем адресатов
            emailSendServiceClass.AddDestinationEmail(HelperClass.DestinationEmails[0]);
            emailSendServiceClass.AddDestinationEmail(HelperClass.DestinationEmails[1]);
            emailSendServiceClass.AddDestinationEmail(HelperClass.DestinationEmails[2]);

            //Указываем отправителя
            emailSendServiceClass.Sender = HelperClass.SenderEmail;

            //Текст и тема письма
            emailSendServiceClass.Subject = txtSubject.Text;
            emailSendServiceClass.Body    = txtBody.Text;

            //Данные SMTP сервера
            emailSendServiceClass.SmtpServer     = HelperClass.GmailSmtpServer;
            emailSendServiceClass.SmtpServerPort = HelperClass.GmailSmtpServerPort;

            if (emailSendServiceClass.Send() != 0)
            {
                MessageWindow mw = new MessageWindow();
                mw.SetMessage(emailSendServiceClass.LastError);
                mw.SetDescription(emailSendServiceClass.ErrorDescrition);
                mw.Show();
            }
            else
            {
                SendEndWindow sew = new SendEndWindow();
                sew.ShowDialog();
            }
        }
コード例 #11
0
 private void BtnSendMail_Click(object sender, RoutedEventArgs e)
 {
     EmailSendServiceClass.GetMailProperties(tbMailTopic.Text, tbMailText.Text, tbGetter.Text, tbLogin.Text,
                                             pbPassword.SecurePassword);
     try
     {
         EmailSendServiceClass.SendMail();
         SendEndWindow endWindow = new SendEndWindow("Письмо отправлено");
         endWindow.ShowDialog();
     }
     catch (Exception exc)
     {
         SendEndWindow endWindow = new SendEndWindow("Письмо не отправлено");
         endWindow.ShowDialog();
     }
 }
コード例 #12
0
        private void btnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            EmailSendServiceClass em = new EmailSendServiceClass(tbSubject.Text, tbBody.Text, passwordBox.SecurePassword);

            try
            {
                em.Send();
                SendEndWindow sew = new SendEndWindow();
                sew.ShowDialog();
            }
            catch (Exception ex)
            {
                SendErrorWindow sw = new SendErrorWindow();
                sw.textInfo.Text = $"Невозможно отправить письмо {ex.ToString()}";
                sw.ShowDialog();
            }
        }
コード例 #13
0
        private void btnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            List <string> listStrMails = StaticVars.ListStrMails; // Список email'ов //кому мы отправляем письмо
            string        strPassword  = passwordBox.Password;    // для WinForms - string strPassword = passwordBox.Text;
            string        theme        = themeBox.Text;
            string        message      = messageBox.Text;

            EmailSendServiceClass essc = new EmailSendServiceClass(StaticVars.SenderEmail,
                                                                   StaticVars.HostName,
                                                                   StaticVars.Port,
                                                                   StaticVars.ListStrMails);

            essc.StartMailing(strPassword, theme, message);

            SendEndWindow sew = new SendEndWindow("Работа завершена");

            sew.ShowDialog();
        }
コード例 #14
0
        private void BtnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            // Список email'ов //кому мы отправляем письмо
            List <string> listStrMails = new List <string> {
                "*****@*****.**", "*****@*****.**"
            };
            // для WinForms - string strPassword = passwordBox.Text;
            string strPassword = passwordBox.Password;

            foreach (string mail in listStrMails)
            {
                // Используем using, чтобы гарантированно удалить объект MailMessage после использования
                using (MailMessage mm = new MailMessage("*****@*****.**", mail))
                {
                    // Формируем письмо
                    mm.Subject    = "Привет из C#";  // Заголовок письма
                    mm.Body       = "Hello, world!"; // Тело письма
                    mm.IsBodyHtml = false;           // Не используем html в теле письма
                                                     // Авторизуемся на smtp-сервере и отправляем письмо
                                                     // Оператор using гарантирует вызов метода Dispose, даже если при вызове
                                                     // методов в объекте происходит исключение.X
                    using (SmtpClient sc = new SmtpClient("smtp.yandex.ru", 25))
                    {
                        sc.EnableSsl   = true;
                        sc.Credentials = new NetworkCredential("*****@*****.**", strPassword);
                        try
                        {
                            sc.Send(mm);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show("Невозможно отправить письмо " + ex.ToString());
                        }
                    }
                } //using (MailMessage mm = new MailMessage("*****@*****.**", mail))
            }
            SendEndWindow sew = new SendEndWindow();

            sew.ShowDialog();
        }
コード例 #15
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            //List<string> listStrMails = new List<string> { "*****@*****.**"}; // Список  email'ов //кому мы отправляем письмо
            //string strPassword = PasswordBox1.Password; // для WinForms - string strPassword = passwordBox.Text;
            //foreach (string mail in listStrMails)
            //{
            //    // Используем using, чтобы гарантированно удалить объект MailMessage после использования
            //    using (MailMessage mm = new MailMessage("*****@*****.**", mail))
            //    {
            //        // Формируем письмо
            //        mm.Subject = "Привет из C#"; // Заголовок письма
            //        mm.Body = "Hello, world!"; // Тело письма
            //        mm.IsBodyHtml = false; // Не используем html в теле письма
            //                               // Авторизуемся на smtp-сервере и отправляем письмо
            //                               // Оператор using гарантирует вызов метода Dispose, даже если при вызове
            //                               // методов в объекте происходит исключение.
            //        using (SmtpClient sc = new SmtpClient("smtp.gmail.com", 587))
            //        {
            //            sc.EnableSsl = true;
            //            sc.Credentials = new NetworkCredential("*****@*****.**", strPassword);
            //            try
            //            {
            //                sc.Send(mm);
            //            }

            //            catch (Exception ex)
            //            {
            //                MessageBox.Show("Невозможно отправить письмо " + ex.ToString());
            //            }
            //        }
            //    } //using (MailMessage mm = new MailMessage("*****@*****.**", mail))
            //}

            SendEndWindow sew = new SendEndWindow();

            sew.ShowDialog();

            // MessageBox.Show("Работа завершена.");
        }
コード例 #16
0
        public void SendMail()
        {
            try
            {
                using (var message = new MailMessage(
                           MailSet.user,
                           MailSet.toSend,
                           MailSet.textMessageCaption,
                           MailSet.textMesageBody
                           ))

                    using (var client = new SmtpClient(srv.Yandex, srv.PortYandex)
                    {
                        EnableSsl = true,
                        Credentials = new NetworkCredential(
                            MailSet.user,
                            MailSet.pass)
                    })
                    {
                        //тест вложений в письме
                        if (MailSet.addAttachAdr != null)
                        {
                            message.Attachments.Add(new Attachment
                                                        (MailSet.addAttachAdr));
                        }
                        client.Send(message);
                    }
            }

            catch (SmtpException error)
            {
                var dlgErr = new SendEndWindow(error.Message);
                dlgErr.ShowDialog();
            }
            var dlg = new SendSuccesfull();

            dlg.ShowDialog();
        }
コード例 #17
0
        private void BtnSendEmail_Click(object sender, RoutedEventArgs e)
        {
            List <string> listStrMails = new List <string>();

            listStrMails.Add(tbxSender.Text);

            string strSender = tbxSender.Text;
            var    password  = passwordBox.SecurePassword;

            foreach (var mail in listStrMails)
            {
                using (var mm = new MailMessage(strSender, mail))
                {
                    mm.Subject    = "Hello from C#";       // Email title / Тема
                    mm.Body       = "Hello world! hahaha"; // Email body / Текст
                    mm.IsBodyHtml = false;                 // false - body hasnt html

                    using (var sc = new SmtpClient("smtp.mail.ru", 25))
                    {
                        sc.EnableSsl   = true;
                        sc.Credentials = new NetworkCredential(strSender, password);
                        try
                        {
                            sc.Send(mm);
                        }
                        catch (Exception ex)
                        {
                            MessageBox.Show($"Ошибка при отправке {ex.ToString()}", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                        }
                    } // smtp
                }     // mm
            }
            //MessageBox.Show("Работа завершена.", "Notification", MessageBoxButton.OK, MessageBoxImage.Information);
            SendEndWindow sew = new SendEndWindow();

            sew.ShowDialog();
        }
コード例 #18
0
        /// <summary>
        /// Отправка писем
        /// </summary>
        public void SendEmail()
        {
            foreach (string mail in listStrMails)
            {
                // Используем using, чтобы гарантированно удалить объект MailMessage после использования
                using (MailMessage mm = new MailMessage(DataMailSender.Sender, mail))
                {
                    // Формируем письмо
                    // Заголовок письма
                    mm.Subject = "Привет из C#";
                    // Тело письма
                    mm.Body       = "Hello, world!";
                    mm.IsBodyHtml = false; // Не используем html в теле письма
                                           // Авторизуемся на smtp-сервере и отправляем письмо
                                           // Оператор using гарантирует вызов метода Dispose, даже если при вызове
                                           // методов в объекте происходит исключение.

                    using (SmtpClient sc = new SmtpClient(DataMailSender.SmtpClient, DataMailSender.Port))
                    {
                        sc.EnableSsl   = true;
                        sc.Credentials = new NetworkCredential(DataMailSender.Sender, StrPassword);
                        try
                        {
                            sc.Send(mm);
                        }
                        catch (Exception ex)
                        {
                            SendEndWindow windowError = new SendEndWindow();
                            windowError.ShowMessage("Невозможно отправить письмо " + ex.ToString());
                        }
                    }
                }
            }

            sendEndWindow.ShowMessage("Работа завершена.");
        }