Введение
1 АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
1.1 Анализ литературы по теме курсового проекта
1.2 Обзор аналогов программных средств
1.3 Постановка задачи
2 РАЗРАБОТКА ПРОГРАММНОГО СРЕДСТВА
2.1 Разработка спецификации требований к ПС
2.2 Обоснование языка и среды программирования
2.3 Программная реализация ПС
3 ТЕСТИРОВАНИЕ ПРОГРАММНОГО СРЕДСТВА
4 РУКОВОДСТВО ИСПОЛЬЗОВАНИЯ
Заключение
Список использованной литературы
ПРИЛОЖЕНИЕ
Введение
По своей сути загрузка файла из Интернета – это копирование с одного компьютера на другой, только компьютер, с которого копируется файл, находится достаточно далеко от того, который этот файл принимает. По большому счету такое копирование ничем особо не отличается от любого другого копирования например, с компакт-диска на винчестер. При загрузке файла из Сети есть лишь несколько существенных различий: скорость такого копирования невысока, а его прерывание влечет повторение всего процесса с самого начала. Правда, касается это только загрузки с помощью браузера. Этот факт и привел в свое время к появлению специализированных программ - менеджеров закачек.
Функциональность таких приложений гораздо больше, чем у менеджеров закачек, встроенных в браузеры. Основные преимущества загрузки файлов с использованием специализированных менеджеров закачек перед загрузкой с помощью браузеров следующие.
• Менеджеры закачек поддерживают возможность докачки, то есть в любой момент загрузку файла можно приостановить, отключиться от Интернета, потом возобновить с места, на котором загрузка была приостановлена.
• Файл загружается одновременно в несколько потоков, то есть он как бы разбивается на части, каждая из которых загружается отдельно, что повышает скорость загрузки.
• В менеджерах закачек, как правило, встроены многочисленные дополнительные функции, существенно повышающие удобство работы:
Пользователь, посещая различные сайты, может добавить в менеджер ссылки на файлы, которые он хотел бы скачать и запустить их закачку после того, как сёрфинг закончен. Таким образом, закачка файлов при помощи менеджера может быть выполнена в то время, когда пользователь не работает в Интернете.
1. Анализ предметной области
Менеджера загрузок поддерживает основные функции: загрузка файл, приостановка его загрузки, с последующей возможность возобновления, прерывание загрузки.
Для реализации этих функций хорошо подходит библиотека работы с сетью LibCurl.
Libcurl это удобная в использовании, свободная, кроссплатформенная библиотека для работы с сетью. Которая поддерживает работу с такими платформами как: Linux, Windows, Solaris, MacOS X и многими другими. В данном посте речь пойдет о использовании libcurl на платформе Windows. Libcurl позволяет работать с протоколами FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, LDAP, LDAPS and FILE. С помощью libcurl можно работать с cookies, с proxy-сервером, можно осуществлять user+password авторизацию, тунеллирование http proxy, также libcurl имеет поддержку SSL сертификатов и многое другое.
Для начала работы с libcurl надо скачать саму библиотеку с официальной страницы загрузки: [http://curl.haxx.se/download.html]
После скачивания архива, следует разложить файлы архива по своим полочкам. Заголовочные файлы(.h) из папки include, следует поместить в папку include компилятора. Lib-файлы из папки lib, следует поместить в папку lib компилятора.
Dll-файлы из папки bin, следует поместить в папку System32 Windows'a.
С помощью libcurl можно работать с многопоточным интерфейсом (The multi interface) и просты интерфейсом (The Easy interface). Для поставленной тему курсовой работы большое внимание удаляется интерфейсу (The Easy interface).
Для работы с библиотекой необходимо подключить заголовочный файл "curl.h" и нужные lib-файлы.
Требования для разработки этого продукта:
· среды: Microsoft Visual Studio 2013 .
· требуются библиотеки libcurl.dll, libeay32.dll, ssleay32.dll .
· беспроводная, локальная или другие сети .
2. Работа системы
1.Пользователь должен ввести URL и путь к файлу для добавления файла на закачку.
1.1Пользователь должен иметь возможность ввести путь к файлу вручную или выбрать его с помощью диалогового окна.
1.2 Пользователь должен иметь возможность выбрать один из вариантов добавления закачки это: приостановить предыдущую закачку, начать закачку после завершения закачек поставленных на загрузку ранее.
1.3 При невыбранном варианте добавления закачки, автоматически будет выбран вариант старта закачки после завершения предыдущих закачек.
1.4 При пустом поле URL или пути появится сообщения о некорректном заполнении полей.
2. Пользователь должен иметь возможность поставить выбранную закачку на паузу.
2.1 При невыбранной закачке, поставлена на паузу будет та, которая была добавлена ранее и загружается.
2.2 При выборе закачки, которая уже загрузилась появится сообщение о том, что пользователь не может поставить на паузу выбранную закачку, т.к она уже загружена.
2.3 При выборе закачки, которая была остановлена появится сообщение о том, что пользователь не может поставить на паузу выбранную закачку, т.к она остановлена.
Заключение
В результате выполнения данной курсовой работы была разработано программное средство DownloadManager с помощью средств C++,C и WinAPI. В будущем планируется внести в программу следующие функции:
1. Разделение закачек по категориями
2. Запуск закачки через интервал времени
3. После перезагрузки приложения, сохранять все закачки
4. Возможность ограничения скорости