Курсовая работа: Разработка почтового клиента для операционной системы Windows

Cstring ip – строка типа Cstring, предназначенная для зранения ip адреса сервера

int port – целочисленная переменная для хранения номера порта сервера;

CString messtr – строка для хранения сформированного сообщения ответа клиента

CString pswd – строка для хранения паролья прользователя;

CString login – строка для хранения имени пользователя;

char * buf = new char [128] – массив для хранения принятов строки от сервера;

char fl=0 – переменная для анализа ответа сервера;

char * stamp = new char[64] – строка для хранения временной метки сервера.

Метод вызывается при нажатии пользователем на кнопку соединения с сервером. Подразумевается, что на момент нажатия кнопки, пользователь ввел все необходимые для функционирования программы данные, как то: имя, пароль, адрес, номер порта, тип аутентификации. Наличие полноты ввода этих данных проверяется программой и, в случае, если какие-либо из них отсутствуют, программа выдает сообщение об ошибке в виде окна AfxMessageBox.

Как только данный метод вызывается, происходит считывание введенных данных в переменные с помощью функции GetDlgItemText. Параметрами данной функции являются идентификатор элемента управления из которого считывается строка и переменная, в котороую данные считываются.

GetDlgItemText(IDC_EDIT1,ip); - из строки ввода в переменную ip

GetDlgItemText(IDC_EDIT2,login); - из строки ввода имени пользователя в переменную login;

port = atoi(login); - с помощью функции atoi строка login преобразуется в целочисленное значение и присваивается переменной port.

GetDlgItemText(IDC_EDIT3,login); - из строки ввода имени в строку login

GetDlgItemText(IDC_EDIT4,pswd); - из строки ввода пароля в строку pswd.

После этого производится проверка того, что был выбран тип аутентификации, если ни один из типов аутентификации выбран не был, то происходит вызов диалогового окна с сообщением об ошибке.

Если проверка проёдена успешно, происходит создание сокета pSocket=new pop3Socket(this), и его инициализация pSocket->Create().

Далее функционирование программы осуществляется в зависимости от выбранного типа аутентификации. Для этого производится анализ переменных simple, apop и auth.

1.3 Простая аутентификачия

1. Осуществляется соединение с сервером с помощью вызова методоа сокета pSocet: pSocket->Connect(ip,port), где в качестве параметров передаются строка, содержащая адрес сервера и номер порта Если соединение не установлено по каким-либо причинам, то производится вызов окна ошибки и завершение программы.

2. Ожидание и получение строки ответа от сервера в массив и buf с помощью вызова метода сокета pSocet->Receive(buf,0). В случае, если данные не были получены этот метод возвращает отрицательное число, в противном случае возвращает количество полученных байт. Количество байт, полученных от сервера присваивается переменной int recived.

3. Производится форматирование с помощью метода строки messtr.Format() строки messtr messtr.Format("S: %s",buf). Этот метод добавляет в начало строки символ последовательность “S: ” и далее содеримое массива buf.

4. Производится ывод строки messtr в ListBox с помощью вызова метода Protocol->Add(messtr).

5. В цикле от 0 до 127 элемента производится обнуление массива buf

6. С помощью вызова метода EnableWindow объекта disconect_btn с true в качестве параметра производится установка окна кнопки разрыва соединения с сервером в активное сотояние.

7. С помощью вызова метода EnableWindow объекта conect_btn с false в качестве параметра производится установка окна кнопки соединения с сервером в неактивное стостояние.

8. Если от сервера получен положительный ответ (проверяется по значению переменной fl: если она имеет значение «+», то ответ положителен, если «-», то отрицателен), тогда производится отправка ему строки с командой USER:

«pSocket->Send("USER " + login + "\n\r",strlen("USER ")+strlen(login) + strlen("\n\r"),1)», если нет, то осуществляется переход к пункту 14

9. Повторить 2-7

К-во Просмотров: 337
Бесплатно скачать Курсовая работа: Разработка почтового клиента для операционной системы Windows