ТОР 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 с.
Приложение А Не нашли, что искали? Воспользуйтесь поиском:
|