Guest User

Untitled

a guest
Nov 22nd, 2018
171
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 10.63 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.Web;
  10. using System.Net;
  11. using System.Net.NetworkInformation;
  12. using System.IO;
  13. using System.Net.Mail;
  14. using Microsoft.Win32;
  15. using System.Threading;
  16. using System.Diagnostics;
  17. namespace AlienBlob_s_Mailer
  18. {
  19.     public partial class Form1 : Form
  20.     {
  21.         public Form1()
  22.         {
  23.             InitializeComponent();
  24.         }
  25.         public static string selEmail = "";
  26.         public static string selsmtp = "";
  27.         public static string selpassword = "";
  28.         private void AlienBlobMailer_Load(object sender, EventArgs e)
  29.         {
  30.             InformationWindow.ReadOnly = true;
  31.             FileLoader.RunWorkerAsync();
  32.             if(!Directory.Exists(Application.StartupPath + "\\Data"))
  33.             {
  34.                 Directory.CreateDirectory(Application.StartupPath + "\\Data");
  35.                 Directory.CreateDirectory(Application.StartupPath + "\\Data\\Adressbook");
  36.                 Directory.CreateDirectory(Application.StartupPath + "\\Data\\Saved Mails");
  37.                 Directory.CreateDirectory(Application.StartupPath + "\\Data\\User Info");
  38.             }
  39.         }
  40.         private void SenderWorker_DoWork(object sender, DoWorkEventArgs e)
  41.         {
  42.             try
  43.             {
  44.                 MailMessage mail = new MailMessage();
  45.                 SmtpClient SmtpServer = new SmtpClient(Smtp.Text, 587);
  46.                 SmtpServer.UseDefaultCredentials = false;
  47.                 SmtpServer.Credentials = new NetworkCredential(UserAdress.Text, Password.Text);
  48.             SmtpServer.EnableSsl = true;
  49.             foreach (string mailAddr in Recipients.Text.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries))
  50.             {
  51.                 mail.To.Add(mailAddr);
  52.             }
  53.             mail.From = new MailAddress (UserAdress.Text);
  54.             mail.Subject = Subject.Text;
  55.             mail.Body = TheMail.Text;
  56.             SmtpServer.Send(mail);
  57.             InformationWindow.Text = InformationWindow.Text + Environment.NewLine + ("[") + DateTime.Now.ToString("HH:mm:ss tt") + ("] ") + (" Email sent...");
  58.             }    
  59.             catch (Exception ex)
  60.             {
  61.                 MessageBox.Show(ex.Message, "Error: " + ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);
  62.                 InformationWindow.Text = InformationWindow.Text + Environment.NewLine + ("[") + DateTime.Now.ToString("HH:mm:ss tt") + ("] ") + (" Email not sent...");
  63.             }
  64.             finally
  65.             {
  66.             }
  67.         }
  68.         private void SendMailBtn_Click(object sender, EventArgs e)
  69.         {
  70.             SenderWorker.RunWorkerAsync();
  71.             InformationWindow.Text = InformationWindow.Text + Environment.NewLine + ("[") + DateTime.Now.ToString("HH:mm:ss tt") + ("] ") + (" Sending Email...");
  72.         }
  73.         private void SaveUser_Click(object sender, EventArgs e)
  74.         {
  75.             try
  76.             {
  77.                 StreamWriter abc = new StreamWriter(Application.StartupPath + "\\Data\\User Info\\" + User.Text + ".dll", true);
  78.             abc.WriteLine(User.Text);
  79.             abc.WriteLine(UserAdress.Text);
  80.             abc.WriteLine(Password.Text);
  81.             abc.WriteLine(Smtp.Text);
  82.             abc.Dispose();
  83.             abc.Close();
  84.             cbUser.Items.Clear();
  85.             FileLoader.RunWorkerAsync();
  86.             FileStream fs = new FileStream(Application.StartupPath + "\\Data\\User Info\\" + User.Text + ".dll", FileMode.Create, FileAccess.Write);
  87.             StreamWriter s = new StreamWriter(fs);
  88.             s.BaseStream.Seek(0, SeekOrigin.End);
  89.             s.WriteLine("<username>" + User.Text + "</username>");
  90.             s.WriteLine("<mail>" + UserAdress.Text + "</mail>");
  91.             s.WriteLine("<password>" + Password.Text + "</password>");
  92.             s.WriteLine("<smtp>" + Smtp.Text + "</smtp>");
  93.             s.Close();
  94.             }
  95.             catch (Exception ex)
  96.             {
  97.             }
  98.         }
  99.         private void SaveRecipientBtn_Click(object sender, EventArgs e)
  100.         {
  101.             try
  102.             {
  103.                 StreamWriter abc = new StreamWriter(Application.StartupPath + "\\Data\\Adressbook\\adressbook.dll", true);
  104.             abc.WriteLine(Recipients.Text);
  105.             abc.Dispose();
  106.             abc.Close();
  107.             cbadressbook.Items.Clear();
  108.             FileLoader.RunWorkerAsync();
  109.             }
  110.             catch (Exception ex)
  111.             {
  112.             }
  113.         }
  114.         private void LoadAllRecipientsBtn_Click(object sender, EventArgs e)
  115.         {
  116.             try
  117.             {
  118.                 if (File.Exists(Application.StartupPath + "\\Data\\Adressbook\\adressbook.dll"))
  119.                 {
  120.                   StreamReader fileSR = new StreamReader(Application.StartupPath + "\\Data\\Adressbook\\adressbook.dll");
  121.                     Recipients.Text = (fileSR.ReadToEnd());
  122.                 }
  123.             }
  124.             catch (Exception ex)
  125.             {
  126.             }
  127.         }
  128.         private void SaveMailsBtn_Click(object sender, EventArgs e)
  129.         {
  130.             try
  131.             {
  132.                StreamWriter abc = new StreamWriter(Application.StartupPath + "\\Data\\Saved Mails\\" + SavedMails.Text + ".dll", true);
  133.             abc.WriteLine(Subject.Text);
  134.             abc.Dispose();
  135.             abc.Close();
  136.             cbSavedMails.Items.Clear();
  137.             FileLoader.RunWorkerAsync();
  138.             FileStream fs = new FileStream(Application.StartupPath + "\\Data\\Saved Mails\\" + SavedMails.Text + ".dll", FileMode.Create, FileAccess.Write);
  139.             StreamWriter s = new StreamWriter(fs);
  140.             s.BaseStream.Seek(0, SeekOrigin.End);
  141.             s.WriteLine("<mailsubject>" + Subject.Text + "</mailsubject>");
  142.             s.WriteLine("<mailbody>" + TheMail.Text + "</mailbody>");
  143.             s.Close();
  144.             SavedMails.Clear();
  145.             }
  146.             catch (Exception ex)
  147.             {
  148.             }
  149.         }
  150.         private void cbUser_SelectedIndexChanged(object sender, EventArgs e)
  151.         {
  152.            string bbb = File.ReadAllText(Application.StartupPath + "\\Data\\User Info\\" + cbUser.SelectedItem);
  153.            string[] accountUsername = bbb.Split(new String[] {"<username>", "</username>"}, StringSplitOptions.None);
  154.            string[] accountMail = bbb.Split(new String[] { "<mail>", "</mail>" }, StringSplitOptions.None);
  155.            string[] accountPassword = bbb.Split(new String[] { "<password>", "</password>" }, StringSplitOptions.None);
  156.            string[] accountSmtp = bbb.Split(new String[] { "<smtp>", "</smtp>" }, StringSplitOptions.None);
  157.         User.Text = accountUsername[1];
  158.         UserAdress.Text = accountMail[1];
  159.         Password.Text = accountPassword[1];
  160.         Smtp.Text = accountSmtp[1];
  161.         }
  162.         private void cbadressbook_SelectedIndexChanged(object sender, EventArgs e)
  163.         {
  164.             try
  165.             {
  166.                 if(!Recipients.Text.Contains("@"))
  167.                 {
  168.                     Recipients.Text = cbadressbook.Text;
  169.                 }
  170.                     else
  171.                     Recipients.Text = Recipients.Text + Environment.NewLine + cbadressbook.Text;
  172.                 }
  173.             catch (Exception ex)
  174.             {
  175.             }
  176.         }
  177.         private void cbSavedMails_SelectedIndexChanged(object sender, EventArgs e)
  178.         {
  179.                 string bbb = File.ReadAllText(Application.StartupPath + "\\Data\\Saved Mails\\" + cbSavedMails.Text);
  180.                 string[] mailSubject = bbb.Split(new String[] { "<mailsubject>", "</mailsubject>" }, StringSplitOptions.None);
  181.                 string[] mailBody = bbb.Split(new String[] { "<mailbody>", "</mailbody>" }, StringSplitOptions.None);
  182.                 TheMail.Text = mailBody[1];
  183.                 Subject.Text = mailSubject[1];
  184.         }
  185.         private void emptyAllFieldsToolStripMenuItem_Click(object sender, EventArgs e)
  186.         {
  187.                 User.Clear();
  188.                 TheMail.Clear();
  189.                 UserAdress.Clear();
  190.                 Password.Clear();
  191.                 Smtp.Clear();
  192.                 Recipients.Clear();
  193.                 Subject.Clear();
  194.                 SavedMails.Clear();
  195.         }
  196.         private void troubleshootingToolStripMenuItem_Click(object sender, EventArgs e)
  197.         {
  198.             AlienBlobMailerHelp TroubleShoot = new AlienBlobMailerHelp();
  199.             TroubleShoot.Show();
  200.         }
  201.         private void exitToolStripMenuItem_Click(object sender, EventArgs e)
  202.         {
  203.             this.Close();
  204.         }
  205.         private void FileLoader_DoWork(object sender, DoWorkEventArgs e)
  206.         {
  207.             cbUser.Items.Clear();
  208.         cbadressbook.Items.Clear();
  209.         cbSavedMails.Items.Clear();
  210.         try
  211.         {
  212.             DirectoryInfo di = new DirectoryInfo(Application.StartupPath + "\\Data\\User Info\\");
  213.             FileSystemInfo[] fi = di.GetFiles();
  214.             Console.WriteLine(Application.StartupPath + "\\Data\\User Info\\");
  215.             foreach (FileInfo fiTemp in fi)
  216.                 cbUser.Items.Add(fiTemp.Name);
  217.             string[] folderFiles = Directory.GetFiles(Application.StartupPath + "\\Data\\User Info\\");
  218.  
  219.             if (folderFiles.Length > 0)
  220.             {
  221.                 InformationWindow.Text = ("[") + DateTime.Now.ToString("HH:mm:ss tt") + ("] ") + (" AlienBlob's Mailer loaded users without problems...");
  222.             }
  223.             else
  224.             {
  225.                 InformationWindow.Text = ("[") + DateTime.Now.ToString("HH:mm:ss tt") + ("] ") + (" AlienBlob's Mailer did not find any users...");
  226.             }
  227.  
  228.             if (File.Exists(Application.StartupPath + "\\Data\\Adressbook\\adressbook.dll"))
  229.             {
  230.                 StreamReader fileSR = new StreamReader(Application.StartupPath + "\\Data\\Adressbook\\adressbook.dll");
  231.                 string line;
  232.                 while ((line = fileSR.ReadLine()) != null)
  233.                 {
  234.                     cbadressbook.Items.Add(line);
  235.                 }
  236.             }
  237.         }
  238.         catch (Exception ex)
  239.             {
  240.             }
  241.         try
  242.         {
  243.             DirectoryInfo di = new DirectoryInfo(Application.StartupPath + "\\Data\\Saved Mails\\");
  244.             FileSystemInfo[] fie = di.GetFiles();
  245.             Console.WriteLine(Application.StartupPath + "\\Data\\Saved Mails\\");
  246.             foreach (FileInfo fieTemp in fie)
  247.                 cbSavedMails.Items.Add(fieTemp.Name);
  248.         }
  249.         catch (Exception ex)
  250.         {
  251.         }
  252.         }
  253.     }
  254.     }
Add Comment
Please, Sign In to add comment