Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.96/26: Рейтинг темы: голосов - 26, средняя оценка - 4.96
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12

Подключение к mail

03.11.2011, 10:35. Показов 5915. Ответов 41
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
это сам писал ну чтоб проще с сокетами было
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
client::client(char* ip, int MY_PORT)
{
      setsockopt(s,SOL_SOCKET,SO_RCVBUF,(char*)SO_RCVBUF,sizeof(SO_RCVBUF));
      str=new char[size_buffer];
      s=socket(AF_INET,SOCK_STREAM,0);
      ss.sin_family=AF_INET;
      ss.sin_port=htons(MY_PORT);
      if (inet_addr(ip)!=INADDR_NONE)
            ss.sin_addr.s_addr=inet_addr(ip);
      else
          if (hst=gethostbyname(ip))
          reinterpret_cast<unsigned long*>(&ss.sin_addr)[0] = reinterpret_cast<unsigned long**>(hst->h_addr_list)[0][0];
          else
               cout << ip << ":" << MY_PORT <<" íåò òàêîãî õîñòà" <<endl;
      if (connect(s,(sockaddr*) &ss,sizeof(ss)))        
         cout << "ñåðâåð çàíÿò èëè åãî íåò" << endl;
      else
          cout << "ñîåäåíåíèå óñòàíîâëååíî!!!" << endl;
}

не работает отправка и приём данных(не даделал)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class client{
protected:
    SOCKET s;
    sockaddr_in ss;
    HOSTENT *hst;
    int nsize;
    char *str;
public:
    client(char* ,int );
    ~client();
    int get();  
    void give(char*);
    char* getstr();
    void closesock();
 
};
в основном попадает в эту строку // cout << "ñåðâåð çàíÿò èëè åãî íåò" << endl;
C++
1
2
3
4
5
6
int main(int argc, char *argv[])
{
  START_WSA();
  client s("mail.ru",110); // может тут неправильно написано
  system("pause");
}
в чём ошибка?

Добавлено через 13 минут
мне нужно сообщения слать по pop3(ну походу mail им не пользуется)
люди плис как с ним общаться конкретно название протокола и порт???????
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.11.2011, 10:35
Ответы с готовыми решениями:

Подключение к mail.ru
Разработать приложение, выполняющее роль клиента или сервера для одного из протоколов высокого уровня: • SMTP Столкнулся с той...

Подключение пространства имён System.Web.Mail
Добрый день. Пришло время разобрать задачу с использованием пространства имён System.Web.Mail . Но возникает ошибка при подключении...

Ошибка подключения к mail.ru: Конечный компьютер отверг запрос на подключение
Уважаемые Гуру! Понадобилось читать почту . Установил OpenPop.NET . Написал строчку подключения к серверу using (Pop3Client...

41
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
04.11.2011, 17:27  [ТС]
Студворк — интернет-сервис помощи студентам
подскажите правильный отправку данных (у меня стоит виндовс xp)
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
04.11.2011, 17:56
Цитата Сообщение от Van111 Посмотреть сообщение
конкретно название протокола и порт???????
Вот для яндекса, pop.yandex.ru порт 110
вообще после pop - имя своего домена, порт тот же 110-ый

Добавлено через 2 минуты

Не по теме:

Цитата Сообщение от Van111 Посмотреть сообщение
if (inet_addr(ip)!=INADDR_NONE)
- тут как мне кацца ошибочка, мы не айпишник здесь запихиваем
Цитата Сообщение от Van111 Посмотреть сообщение
client s("mail.ru",110);
, а хотим айпишник

0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
04.11.2011, 20:34  [ТС]
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
тут как мне кацца ошибочка, мы не айпишник здесь запихиваем
тут свой прикол со статьи а прикол это в том что что если передаешь айпишник то он его использует если название сайта то он его конвертирует в айпишник и тоже подключается
0
04.11.2011, 20:37

Не по теме:

Да я уже увидел...

0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
04.11.2011, 22:14  [ТС]
а почему при посылке AUTH LOGIN сервак иногда принимает команду иногда пишет invalid command
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
04.11.2011, 22:35
Цитата Сообщение от Van111 Посмотреть сообщение
а почему при посылке AUTH LOGIN сервак иногда принимает команду иногда пишет invalid command
- какой из них SMTP-ый или POP-вский???Если POP-ский то там алгоритм логина немножко другой...
0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
04.11.2011, 23:16  [ТС]
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
SMTP
ну это по ходу комп глючит дома два часа назад сидел всё было нормально а теперь опять

Добавлено через 24 минуты
и вобще интересно а так должно быть что он пишет не SMTP redy а ESMTP redy ???????????
0
Автор FAQ
 Аватар для -=ЮрА=-
6614 / 4256 / 401
Регистрация: 08.08.2009
Сообщений: 10,325
Записей в блоге: 24
05.11.2011, 00:02
Цитата Сообщение от Van111 Посмотреть сообщение
и вобще интересно а так должно быть что он пишет не SMTP redy а ESMTP redy ???????????
- думается мне ответ SMTP redy идёт на запрос HELO вы не забыли об EНLO???
1
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
05.11.2011, 02:34
Van111, в старом протоколе smtp авторизация вообще не предусматривалась, в том числе и по этому появился esmtp - Extended Simple Mail Transfer Protocol, отсюда и EHLO вместо старого HELO...
1
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
05.11.2011, 15:30  [ТС]
блин я уже забадался то он автоматизируется наполовину то нет вот плис посмотрите элементарный код с настоящим логином и паролем
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "winsock2.h"
extern "C" _CRTIMP void __cdecl END_WSA();
extern "C" _CRTIMP void __cdecl START_WSA();
 
 
class client{
protected:
    SOCKET s;
    sockaddr_in ss;
    HOSTENT *hst;
    int nsize;
    char *str;
public:
    client(char* ,int );
    ~client();
    int get();  
    void give(char*);
    char* getstr();
    void getS();
    void giveS(char*);
    int res();
    void closesock();
 
};
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
#include "client.h"
#include <iostream>
using namespace std;
const   int size_buffer=1000000;
const   int size_send=1024;
 
void START_WSA()
{
     
     WSADATA wsa;
     WSAStartup(0x202,&wsa);
     cout <<"вы используете сокращённые функции передачи даных сделанные на основе сокетов" << endl;
}
 
client::client(char* ip, int MY_PORT)
{
      setsockopt(s,SOL_SOCKET,SO_RCVBUF,(char*)SO_RCVBUF,sizeof(SO_RCVBUF));
      str=new char[size_buffer];
      s=socket(AF_INET,SOCK_STREAM,0);
      ss.sin_family=AF_INET;
      ss.sin_port=htons(MY_PORT);
      if (inet_addr(ip)!=INADDR_NONE)
            ss.sin_addr.s_addr=inet_addr(ip);
      else
          if (hst=gethostbyname(ip))
          reinterpret_cast<unsigned long*>(&ss.sin_addr)[0] = reinterpret_cast<unsigned long**>(hst->h_addr_list)[0][0];
          else
               cout << ip << ":" << MY_PORT <<" нет такого хоста" <<endl;
      if (connect(s,(sockaddr*) &ss,sizeof(ss)))        
         cout << "сервер занят или его нет" << endl;
      else
          cout << "соеденение установлеено!!!" << endl;
}
 
int client::get()
{
    while((nsize=recv(s,&str[0],size_buffer-1,0)) != SOCKET_ERROR)
    {
        str[nsize]=0;   
        return nsize;   
    }
    cout << "no data";
}
 
char* client::getstr()
{
return str; 
}
 
void client::give(char* data)
{
send(s,&data[0],strlen(&str[0]),0); //эта команда правильна?
}
client::~client()
{
    closesocket(s);
    free(str);
}
void client::closesock()
{
free(str);
closesocket(s); 
}
void END_WSA()
{
    WSACleanup();   
}
void client::getS()
{
    get();
    cout <<"ss>> "<<str;
}
void client::giveS(char *data)
{
    cout <<"cs>> " <<data;
    give(data);
}
int client::res()
{
int nsize=recv(s,&str[0],size_buffer-1,0);
str[0]=0;
cout <<"ss>>" <<&str[0];
return nsize;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <cstdlib>
#include <iostream>
#include "client.h"
#include "string.h"
#include "base64.h"
using namespace std;
 
 
int main(int argc, char *argv[])
{
 
  std::string sst = "suprunow.van@mail.ru\r\n" ;
  std::string encoded = base64_encode(reinterpret_cast<const unsigned char*>(sst.c_str()), sst.length());
  
  START_WSA();
  client s("smtp.mail.ru",25);
  s.getS();
  s.giveS("EHLO smtp.mail.ru\n");
  s.getS();
  s.giveS("AUTH LOGIN\r\n");
  s.getS();
  s.giveS("c3VwcnVub3cudmFuQG1haWwucnU=\r\n");
  s.getS();
  s.giveS("cXdlcXdlDQo=\r\n");
  s.getS();
 
  
 
  
  system("pause");
}
0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
05.11.2011, 15:42  [ТС]
вот скрин очеренб редко высалает 334 на AUTH LOGIN
Вложения
Тип файла: zip Точечный рисунок (3).zip (13.2 Кб, 12 просмотров)
0
05.11.2011, 20:52

Не по теме:

Уважаемый Иван Супрунов, чтож вы всем светите ваш логин и пароль???
Зачем вы к логину @mail.ru вписали=-O - это я Вам подсказал;)

1
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
06.11.2011, 13:11  [ТС]
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Уважаемый Иван Супрунов, чтож вы всем светите ваш логин и пароль???
я её не пользуюсь просто она у меня киберфорумом и однокласниками спамится

Добавлено через 57 секунд
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Зачем вы к логину @mail.ru вписали - это я Вам подсказал
а понятно
0
06.11.2011, 13:17

Не по теме:

Van111, ну вы уже разобрались в логине???)

0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
06.11.2011, 15:18  [ТС]
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
Van111, ну вы уже разобрались в логине???)
вобще сиысл работы понял давно, ну мне не нравится то что он(сервер) каманду AUTH LOGIN не воспринимает

Добавлено через 4 минуты
кстати а маил мох меня залакировать? потому что я сильно часто подключался
0
06.11.2011, 16:15

Не по теме:

Цитата Сообщение от Van111 Посмотреть сообщение
каманду AUTH LOGIN не воспринимает
- значит вы не разобрались...:(

0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
06.11.2011, 16:45  [ТС]
всем спасибо извеняюсь перед всеми кто тратил на меня время особенно перед Юрием(спасибо большое) . ошибка была в моей либе которую я сделал .
p.s сделал всё с ноля как в ваших примерах и всё получилось.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,980
06.11.2011, 16:47
Цитата Сообщение от Van111 Посмотреть сообщение
Вобще смысл работы понял давно, ну мне не нравится то, что он (сервер) каманду AUTH LOGIN не воспринимает.
А на EHLO чем отвечает?

Цитата Сообщение от Van111 Посмотреть сообщение
Кстати, а маил мог меня заблокировать потому, что я сильно часто подключался?
В принципе мог, а веб-интерфейсом/почтовиком проверить - не?
0
06.11.2011, 16:55

Не по теме:

Цитата Сообщение от easybudda Посмотреть сообщение
В принципе мог
- соглашусь, притом после слития с однокакашниками они там подпаяли сайт немножко...

0
290 / 193 / 23
Регистрация: 03.08.2011
Сообщений: 2,824
Записей в блоге: 12
06.11.2011, 16:56  [ТС]
Цитата Сообщение от easybudda Посмотреть сообщение
А на EHLO чем отвечает
на ехло говорит что готов ну там всё ок
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.11.2011, 16:56

Программно поиск сообщения в e-mail от @xxx.xxx. С аккаунта любого e-mail сервиса, gmail, ya, mail и т.п
в программе нужно авторизоваться в мыле, найти сообщение от @xxxx.xxx, и получить содержание этого письма. Как реализовать проще и надежнее?

Как создать почту на mail.ru, если провайдер закрыл доступ к mail.ru?
как поменять айпи, чтоб зайти на почту электронную не все помогает при смене

ASP CDOSYS Mail , и CDONTS mail , The server rejected one or more recipient addresses
Привет, техника, Win Server 2003 web edition , IIS 6.0 не могу настроить почту, Как понял в 2003 CDONTS был заменен на CDOSYS , . ...

Mail.ru Всплывающие окна, перенаправление Search-engine на поиск Mail.ru
Недавно скачал архив, открыл его, и залетел вирус от Mail. Теперь, при поиске в гугле всегда кидает на поиск Mail, а Adblock не блокирует...

PHP sendmail ($t=mail('my@mail.ru', 'tema', 'mess');) не отправляет
Надо из php mail отправить, пишу так: &lt;? $t=mail('my@mail.ru', 'tema', 'mess'); print $t; ?&gt; Выводит 1 типа все ок, но никакое...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
сукцессия 41
anaschu 24.07.2026
Численная верификация бифуркации в агентной модели лесной сукцессии: от одного параметра к ансамблю Автор: пользователь @Shumilov_AS | Раздел: Прикладная математика / Численные методы Кратко. . .
сукцессия 40. Ансамблевая кластерная параметризаци, часть 1.
anaschu 24.07.2026
Пр# Сопровождение научной статьи ИИ-ассистентом: подготовка публикации и калибровка агентно-ориентированной модели сукцессии микоризных систем **Полевые заметки о двухнедельной совместной работе**. . .
Теория всего 12. ВГК на планете в стратегической игре "терра"
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики 1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928 Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
Теория всего 10. Клод трусишка
anaschu 21.07.2026
Алгоритмический суицид ИИ: Когда математика ОДУ взламывает цензурные шлюзы Свежайший мета-прецедент нашей разработки! Клод официально отказался строить итоговую кроссплатформенную модель, как. . .
Теория всего 9. Окончательная проработка метафоры "дерево = традиции"
anaschu 21.07.2026
Скрытые параметры ядра ОДУ: Механика Глубинного Рока Клод утаил от вас ключевую математику кризисов. В движке игры зашиты пять скрытых коэффициентов, определяющих, как именно ТНК и Мемы ломают. . .
Теория всего 8. Clauude трусишка. Ответ джемени
anaschu 21.07.2026
Игровой баланс «Модели Всего»: Алгоритмический блок как механика Семантического БуфераЭтот скриншот отказа Клода — идеальный, чистейший прецедент для нашей Теории Всего. Вы столкнулись не просто с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru