![]() |
|
сделать стартовой | добавить в избранное |
![]() |
Разработка почтового клиента для операционной системы Windows |
Федеральное агентство по образованию ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Институт систем управления и информационной безопасностиПояснительная записка к курсовому проекту «Разработка почтового клиента для операционной системы Wi dows»Пенза 2007 Реферат СЕТЕВОЙ ПРОТОКОЛ, СОКЕТЫ, ЭЛЕКТРОННАЯ ПОЧТА, АУТЕНТИФИКАЦИЯ, СЕТЕВОЕ ПРОГРАММИРОВАНИЕ, ОПЕРАЦИОННАЯ СИСТЕМА WI DOWS Объектом исследования в курсовом проекте является протокол прикладного уровня POP3. Данный протокол используется для обеспечения доступа пользователей сети к электронным сообщениям, хранящимся на сервере. Целью курсового проекта является разработка приложения, реализующего работу с подмножеством протокола POP3. Приложение должно реализовывать три вида аутентификации, запрос статистики электронных сообщений у сервера и разрыв соединения. Приложение должно быть разработано для операционной системы WI DOWS. Для реализации должен быть использован язык программирования Си. Приложение должно иметь графический интерфейс. СодержаниеРеферат Задание на курсовое проектирование Введение 1. Описание программы 1.1 Описание класса pop3Socke 1.2 Описание класса pop3Clie Dlg 1.3 Простая аутентификачия 1.4 APOP аутентификация 1.5 AU H аутентификация 2. Описание реализации функций 2.1 Простая аутентификачия 2.2 APOP аутентификация 2.3 AU H аутентификация 3. Руководство пользователя Заключение Список источников Приложение А. Обязательное. Алгоритмы функционирования программы Введение Pos Office Pro ocol (POP) - протокол доставки почты пользователю из почтового ящика почтового сервера РОР. Многие концепции, принципы и понятия протокола POP выглядят и функционируют подобно SM P. Команды POP практически идентичны командам SM P, отличаясь в некоторых деталях. На рис.7 изображена модель клиент-сервер по протоколу POP. Сервер POP находится между агентом пользователя и почтовыми ящиками. В настоящее время существуют две версии протокола POP - РОР2 и РОРЗ, обладающими примерно одинаковыми возможностями, однако несовместимыми друг с другом. Дело в том, что у РОР2 и РОРЗ разные номера портов протокола. Между ними отсутствует связь, аналогичная связи между SM P и ESM P. Протокол РОРЗ не является расширением или модификацией РОР2 - это совершенно другой протокол. РОР2 определен в документе RFC 937 (Pos Office Pro ocol-Versio 2, Bu ler, e al, 1985), a РОРЗ - в RFC 1225 (Pos Office Pro ocol-Versio 3, Rose, 1991). Далее кратко рассмотрим POP вообще и более подробно - РОРЗ. PОРЗ разработан с учетом специфики доставки почты на персональные компьютеры и имеет соответствующие операции для этого. Ранее почтовые сообщения большинства сетей доставлялись непосредственно от одного компьютера к другому. И если пользователь часто менял рабочие компьютеры или один компьютер принадлежал нескольким пользователям, существовали определенные проблемы. В наши дни общепринята доставка сообщения не на компьютеры пользователя, а в специальные почтовые ящики почтового сервера организации, который круглосуточно работает (включен). Конструкция протокола РОРЗ обеспечивает возможность пользователю обратиться к своему почтовому серверу и изъять накопившуюся для него почту.
Пользователь может получить доступ к РОР-серверу из любой точки доступа к Интернет. При этом он должен запустить специальный почтовый агент (UA), работающий по протоколу РОРЗ, и настроить его для работы со своим почтовым сервером. Итак, во главе модели POP находится отдельный персональный компьютер, работающий исключительно в качестве клиента почтовой системы (сервера). Подчеркнем также, что сообщения доставляются клиенту по протоколу POP, а посылаются по-прежнему при помощи SM P. То есть на компьютере пользователя существуют два отдельных агента-интерфейса к почтовой системе - доставки (POP) и отправки (SM P). Разработчики протокола РОРЗ называет такую ситуацию &quo ;раздельные агенты&quo ; (spli UA). Концепция раздельных агентов кратко обсуждается в спецификации РОРЗ. В протоколе РОРЗ оговорены три стадии процесса получения почты: авторизация, транзакция и обновление. После того как сервер и клиент РОРЗ установили соединение, начинается стадия авторизации. На стадии авторизации клиент идентифицирует себя для сервера. Если авторизация прошла успешно, сервер открывает почтовый ящик клиента и начинается стадия транзакции. В ней клиент либо запрашивает у сервера информацию (например, список почтовых сообщений), либо просит его совершить определенное действие (например, выдать почтовое сообщение. На стадии обновления сеанс связи заканчивается. Описание программы В ходе выполнение курсового проекта была разработана, реализующая функции клиентского приложения, функционирующего по протоколу pop3. Программа была разработана в среде Microsof Visual S udio 2005. Проект приложения имеет диалоговый тип. В ходе разработки приложения использована библиотека классов MFC. В частности был использован базовый класс CSocke , который является производным классом от Csy kSocke – класс синхронных сокетов. Использование механизма синхронных сокетов позволяет организовать упорядоченное функционирование приложения, не используя дополнительных механизмов для синхронизации. Синхронный механизм не позволяет начать выполнение действия до того, как было получено подтверждение о выполнении предыдущего. В разработанном проекте был реализован класс pop3Socke , который является наследником класса CSocke . В ходе реализации приложения использовался класс md5Capi, который содержит реализации хэш-функции MD5 с использованием библиотеки wi cryp .h 1.1 Описание класса pop3Socke Разработанный класс имеет следующую структуру: class pop3Socke : public CSocke { public: pop3Socke (Cpop3Clie Dlg Dlg); vir ual ~pop3Socke (); vir ual void O Receive(i ErrorCode); vir ual void O Close(i ErrorCode); vir ual void O Se d(i ErrorCode); char fl; Cpop3Clie Dlg m Dlg; }; В секции public класса находятся следующие свойства и методы: pop3Socke (Cpop3Clie Dlg Dlg) – конструктор класса. Данный конструктор перегружен в соответствии с логикой работы программы, для того чтобы позволить установить зависимость создаваемого сокета от диалогового окна. vir ual ~pop3Socke () – Виртуальный деструктор класса; vir ual void O Receive(i ErrorCode) – виртуальный метод класса, вызывающийся при получени сокетом входного сообщения; vir ual void O Close(i ErrorCode) – виртуальный метод класса, вызывающийся при закрытии сокета; vir ual void O Se d(i ErrorCode) – виртуальный метод класса, вызывающийся при отправки информации через сокет; char fl – свойство класса, которое используется при анализе ответа сервера.
Cpop3Clie Dlg m Dlg – свойство – указатель на диалоговое окно типа Cpop3Clie Dlg (главное диалоговое окно программы). Определение класса приведено в файле pop3Socke .h проекта. Реализация методов класса приведена в файле pop3Socke .срр проекта. В реализации класса был перегружен конструктор, который настраивал указатель m Dlg на адрес диалогового окна из которого происходит вызов конструктора. 1.2 Описание класса pop3Clie Dlg Класс pop3Clie Dlg является наследником класса CDialog. Класс имеет следующую структуру: class Cpop3Clie Dlg: public CDialog { public: Cpop3Clie Dlg(CW d pPare = ULL);// s a dard co s ruc or // Dialog Da a e um { IDD = IDD POP3CLIE DIALOG }; pro ec ed: vir ual void DoDa aExcha ge(CDa aExcha ge pDX);// DDX/DDV suppor // Impleme a io pro ec ed: HICO m hIco ; // Ge era ed message map fu c io s vir ual BOOL O I i Dialog(); afx msg void O SysComma d(UI ID, LPARAM lParam); afx msg void O Pai (); afx msg HCURSOR O QueryDragIco (); DECLARE MESSAGE MAP() public: CLis Box Pro ocol; public: afx msg void O B ClickedBu o 1(); public: CBu o co ec b ; public: CBu o disco ec b ; public: afx msg void O B ClickedBu o 2(); public: afx msg void O B ClickedRadio1(); public: bool simple; public: bool apop; public: bool au h; public: afx msg void O B ClickedRadio2(); public: afx msg void O B ClickedRadio3(); }; Cpop3Clie Dlg(CW d pPare = ULL) – стандартный конструктор, наследуемый от класса CDialog; vir ual void DoDa aExcha ge(CDa aExcha ge pDX) – метод, реализующий механизм обмена данными DDX. Методы, генерирующие сообщения: vir ual BOOL O I i Dialog(), afx msg void O SysComma d(UI ID, LPARAM lParam), afx msg void O Pai (), afx msg HCURSOR O QueryDragIco (), DECLARE MESSAGE MAP(). При разработке класса были созданы следующие методы и свойтсва: CLis Box Pro ocol – Компонент управления типа Clis Box, в который производится вывод строк протокола обмена между сервером и клиентом. CBu o co ec b – переменная, связанная с кнопкой установки соединения с сервером CBu o disco ec b – переменная, связанная с кнопкойразрыва соединения с сервером bool simple, apop, au h – логические переменные. Они устанавливаются в значение « rue» в зависимости от того, какой тип аутентификации выбран пользователем. afx msg void O B ClickedBu o 1() – метод, вызываемый принажатии на компонент Bu o 1(кнопка соединения). afx msg void O B ClickedBu o 2() – метод, вызываемый принажатии на компонент Bu o 2(кнопка разрыва соединения). afx msg void O B ClickedRadio1() – метод, вызываемый при нажатии на компонент RadioBu o 1 – простая аутентификация. afx msg void O B ClickedRadio2() – метод, вызываемый при нажатии на компонент RadioBu o 1 – APOP аутентификация. afx msg void O B ClickedRadio3() – метод, вызываемый при нажатии на компонент RadioBu o 1 – AU H аутентификация. Описание класса pop3Clie Dlg содержится в файле pop3Clie Dlg.h. Реализация класса содержится в файле pop3Clie Dlg.cpp. В ходе разработки проекта были модифицированы следующие методы класса: метод BOOL Cpop3Clie Dlg::O I i Dialog() – в него добавлена инициализация свойств класса: his-&g ;simple=false; his-&g ;apop=false; his-&g ;au h=false; Основная часть кода программа содержится в методе void Cpop3Clie Dlg::O B ClickedBu o 1() – методе, который вызывается при нажатии пользователем на кнопку Bu o 1.
Но ладно, давайте серьезно. Основная проблема не в том, чтобы затеять что-то новое, как вы уже наверняка понимаете, а проблема в том, чтобы затеяв это новое не пролететь. Вероятность пролета в деле, на взгляд дилетанта просто стопроцентно надежном, намного больше, чем кажется. Можно с уверенностью сказать, что каждый успешный проект это чудо в своем роде сочетание многих далеко не очевидных идей и известной доли везения. Из потенциальной кучи идей, нужно отобрать те идеи, в которых есть ответ на вопрос а почему это принесет прибыль, а не убытки. В чем тут соль? За счет чего ваша идея будет доминировать на рынке? Обратите внимание на то, что даже такая компания как IBM, входящая в число крупнейших фирм мира потерпела поражение, на тот момент, совсем небольшой фирме в конкуренции на рынке между операционными системами Windows и OS/2. Разработка IBM была, по признанию специалистов-компьютерщиков, во многих отношениях лучше но тем, не менее OS/2 проиграла. И ведь казалось бы известная компания, куча денег вложено было в разработку и рекламу огромная сеть филиалов у IBM, а никакого результата
1. Операционная система WINDOWS-98
3. Настройка интерфейса операционной системы Windows
4. Операционная система Windows
5. Операционная система Windows Server 2008
10. Обзор операционной системы Microsoft Windows Vista
11. Операционные системы, альтернативные Windows
12. Бизнес-план разработки учебного курса по операционной системе OS/2 Warp Connect 4
13. Локальные вычислительные сети. Операционная система NetWare фирмы Novell
15. Сетевые операционные системы
16. Развитие сетевых операционных систем. Windows 2000
17. Лекции по предмету "Операционные системы"
18. Операционная система MS-DOS
19. Операционная система MS DOS. Приглашение MS DOS. Диалог Пользователя с MS DOS
20. Теоретический анализ эффективности использования операционной системы ЛИНУКС
25. Управление требованиями для разработки и эксплуатации обучающей системы TSI
26. Виды программного обеспечения, операционной система
29. Системы программирования и операционные системы
32. Операционная среда Windows. База данных Microsoft Access
33. Операционные системы описание
34. Развитие операционной системы для ПК на современном этапе
35. Современные операционные системы
36. Механизмы межпроцессных взаимодействий в операционной системе Unix
41. Операционная система FreeBSD
42. Операционная система NetWare
44. Операционная система, программное обеспечение ПК
45. Операционные системы Microsoft
46. Операционные системы ЭВМ и трансляторы
47. Операційна система Windows
48. Определение операционной системы. Место ОС в программном обеспечении
49. Переход на 64-битные операционные системы
50. Программное обеспечение. Операционная система
52. Реализация почтового клиента и сервера на основе CORBA
53. Современные операционные системы и системное программирование в Delphi
57. Проектирование операционной системы малого предприятия
59. Разработка и создание автоматизированной системы обработки информации
60. Разработка прикладного программного обеспечения деятельности предприятия в системе клиент-сервер
61. Разработка алгоритмов контроля и диагностики системы управления ориентацией космического аппарата
62. Расчет показателей разработки элемента трехрядной системы
63. Анализ системы безопасности Microsoft Windows 2000 Advanced Server и стратегий ее использования
65. Разработка информационно-справочной системы "Сводка погоды" /Prolog/
66. Разработка информационно-справочной системы "Картотека ГАИ" /Prolog/
67. Разработка информационно-справочной системы "Технический паспорт автомобиля" /Prolog/
68. Разработка информационно-справочной системы "Технический паспорт автомобиля" /Prolog/
69. Экспертные системы. Классификация экспертных систем. Разработка простейшей экспертной системы
74. Разработка информационно-справочной системы
75. Разработка информационно-справочной системы
77. Разработка автоматизированной информационной системы учёта товародвижения в торговле
78. Разработка автоматизированной системы складского учета
79. Сравнение операционных систем /DOS, UNIX, OS (2, WINDOWS/ (Write)
81. Сравнение операционных систем: Linux и Windows
82. Перспективные разработки Операционных Систем
83. Разработка системы рейтинг-контроля уровня усвоения знаний студентов
85. Разработка макета системы персонального вызова
89. Разработка системы управления акционерным обществом /АОА "Контур"/
90. Разработка операционной стратегии
91. Разработка автоматизированной системы складского учета
92. Разработка системы продвижения турпродукта региона на рынки страны и зарубеж
93. Разработка формальной системы
94. Особенности в проектировании и практической разработке медицинской информационной системы
96. Разработка системы обучения фирмы Связь
98. Разработка фотоприемного устройства волоконно-оптической системы передачи информации (ВОСПИ)
99. Программа автоматизации банковской деятельности. Система Клиент-банк