Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Выполнение задания на работу. В первую очередь необходимо создать новую форму.




В первую очередь необходимо создать новую форму.

С целью разработки программы, обеспечивающей загрузку файлов из сети Internet по указанному URL адресу, необходимо воспользоваться ресурсами библиотеки Wininet. Следует прописать эту библиотеку в строке использования ресурсов, как указано на рисунке 206.

Рисунок 206 – Запись библиотеки Wininet

На созданной форме необходимо расположить следующие компоненты:

- TButton с вкладки на панели инструментов Standard – 4 штуки;

- TEdit с вкладки на панели инструментов Standard – 2 штуки;

- TSaveDialog с вкладки на панели инструментов Dialogs – 1 штука;

- Tlabel с вкладки на панели инструментов Standard – по мере необходимости создания подписей ранее вынесенных на форму компонентов.

Вид формы с необходимыми элементами представлен на рисунке 207.

Рисунок 207 – Вид формы с необходимыми элементами

На представленной форме компонент TSaveDialog необходим для вызова окна сохранения файла. Для вызова этого окна необходимо в обработчике событий кнопки[32] прописать код, как показано на рисунке 208.

Рисунок 208 – Код для вызова окна сохранения файла

После нажатия на кнопку для сохранения откроется окно сохранения файла, представленное на рисунке 209.

Рисунок 209 – Окно сохранения файла

В разделе объявления переменных необходимо ввести логическую переменную stop, которая отвечает за остановку загрузки.

На рисунке 210 представлен соответствующий программный код.

Рисунок 210 – Программный код с вводом переменной stop

Для остановки работы программы и выхода из нее необходимо создать обработчик события для кнопок Button 2 и Button 3 соответственно. Код представлен на рисунке 211.

Рисунок 211 – Код остановки закачки и выхода из программы

Далее, когда вспомогательные события работы программы исполнены необходимо, в обработчике события (OnClick) кнопки Button1 прописать код, представленный на рисунке 212.

Рисунок 212 – Программный код для загрузки файлов из сети

В представленном коде после слова begin и до hInet:= InternetOpen ('Закачка',PRE_CONFIG_INTERNET_ACCESS,nil,nil,0); описывается файл, куда будет произведена загрузка, проверка его наличия на жестком диске и если он существует, то продолжение записи.

Далее следует создание Интернет сессии и проверка на узле файла по заданному URL адресу. Если часть файла уже загружалась ранее, включается функция InternetSetFilePointer(hURL, RestartPos, nil,0,0), которая позволяет продолжение загрузки файла с выбранной позиции. Следующий шаг, начинающийся с repeat, – процесс считывания файла в буфер с последующей записью на диске. Этот процесс продолжается до тех пор, пока размер информации, считываемый буфером, не будет равен 0 или не будет активирована переменная stop. В ходе цикла выполняется функция отображения количества информации, записанная в строке label1.Caption:=floattostr(filesize(F) div 1000)+' КБАЙТ'. После завершения цикла Интернет-сессия и записанный файл закрываются, и появляется сообщение, информирующее о причине остановки загрузки.

Переменные, используемые в программе:

hInet: HINTERNET – переменная, содержащая указание на сессию;

hURL: HINTERNET – переменная, содержащая указание на URL адрес;

fSize: DWORD – переменная, содержащая размер файла на диске;

ReadLen: DWORD – переменная, содержащая количество прочитанных байт;

RestartPos: DWORD – переменная позиции, с которой начинается загрузка;

fBuf: array[1..1024] of byte – переменная буфера;

f: file – файловая переменная;

Header: string – дополнительная переменная в HTTP;

err: boolean – переменная сообщения об ошибке.

Контрольные вопросы

1 Каким образом осуществляется загрузка файла?

2 Какую библиотеку целесообразно использовать для осуществления процесса загрузки файлов из сети Интернет?

3 Какая функция отвечает за продолжение загрузки файлов?

4 За что отвечает функция InternetQueryDataAvailable?

5 Что такое URL-адрес?

6 Что обозначает функция Filesize(f)?

7 Для чего необходим компонент TSaveDialog?

8 Как осуществляется процесс дозагрузки файла в случае прерывания контакта с сетью?

9 Какой размер буфера в представленной программе?

10 Какой принцип работы кнопки «Стоп»?

 

 

Список литературы

1. Архангельский А. Я. Программирование в Delphi. М.: Бином, 2001. 410 с.

2. Бобровский С. Delphi 5: Учебный курс. СПб: «Питер», 2001. 552 с.

3. Дарахвелидзе П., Марков Е. Delphi 4. СПб: Питер, 2001. 436 с.

4. Фаронов В. Система программирования Delphi. СПб: БХВ-Петербург, 2005. 892 с.


 

Приложение А






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных