![]() |
|
Модераторы: diadiavova, gambit |
![]()
|
|
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
новичок в программировании на .NET. Надо скачать файл из интернета, использую следущий код:
почему-то картинка скачивается 0Кб, и Event'ов никаких не возникает. Метод instanc.DownloadFile работает (но надо указать Proxy: instanc.Proxy = value), а DownloadFileAsync не хочет, в чём может быть проблема. Это сообщение отредактировал(а) diadiavova - 2.11.2009, 15:21 |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Вот этот код загрузит файл на рабочий стол и по окончании загрузки отобразит его в пикчербоксе
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
спасибо! действительно работает! ещё вопрос. мне надо с определённым промежутком времени сохранять 10 файлов из разных мест, промежуток для всех разный. Где-то 1мин, где-то час. Лучше использовать потоки для такой задачи? если можно небольшой пример.
|
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
Ещё Вы писали о том как сделать чтобы скачивалось одновременно несколько файлов.
Файл конфигурации находится в папке проекта и называется app.config. Это XML - lокумент, его надо открыть в XML-редакторе и добавить в корневой элемент секцию следующего содержания
Не могу найти этот файл в папке проекта, где он может быть ещё? Это сообщение отредактировал(а) diadiavova - 2.11.2009, 15:21 |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Я бы реализовал это в виде списка заданий. Расклад примерно следующий:
Создаётся класс, представляющий задачу, в нём есть свойство, указывающие время очередной закачки, интервал между закачками, и адрес картинки. Так же можно создать метод, котороый автоматически будет прибавлять интервал ко времени. Далее, для каждой картинки создаётся такой объект со всеми данными и из них формируется коллекция. Добавляем в форму таймер и на каждом тике таймера проверяем, есть ли картинки, которые пора обновлять. Если такие находятся, то обновляем и добавляем ко времени очередной загрузки интервал между загрузками. А файл конфигурации можно добавить в проект если его там нет. Диалог "Добавить новый элемент" Добавлено через 37 секунд И не забывай пользоваться тегом "Код" -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
а для чего надо создавать коллекцию? правильно ли понимаю, что надо использовать Task Class из System.Threading.Tasks? т.к. проект у меня "бесформенный" можно ли использовать таймер в нём? |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Кстати, если надо грузить всё асинхронно и это принципиально, то лучше сделать не так как я в первый раз написал, а просто зашивать таймер и вебклиентв каждый такой объект. Вот примерный набросок класса задания. Код не для копипасты и вряд ли сразу заработает, а просто для того, чтобы наглядно показать, что я имею в виду
Это сообщение отредактировал(а) diadiavova - 2.11.2009, 16:52 -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
часть понял, но почему-то у меня ничего не переписывается, вызываю таким кодом:
|
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
всё!! я окончательно запутался!! теперь и первый ваш класс, который Вы написали скачивает файл размером 0 байт!
|
|||
|
||||
| diadiavova |
|
||||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Что это?
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
||||||
|
|||||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Вот сопсно рабочий пример. Сохраняет на рабочий стол каждые 10 секунд, и в NumericUpDown при каждом обновлении увеличивает число на 1.
То есть для каждой картинки по такому объекту создай и всё должно работать. Присоединённый файл ( Кол-во скачиваний: 3 )
DownloadFileAsync.rar 462,71 Kb-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
спасибо большое, работает. Но понять не могу, у меня скачивается файл 0Кб! почему такое происходит? может это из-за Proxy? просто DownloadFile качает нормально при указании строчек:
а DownloadFileAsync не хочет. Как быть? Это сообщение отредактировал(а) s180 - 3.11.2009, 09:33 |
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Это свойство указывает прокси-сервер. А просто объект без параметров естественно работать и не должен.
Кстати, там в примере свойство UpdateInterval надо или убрать или переписать. Это свойство-пустышка, ничего не делает. Поначалу хотел сделать по-другому и ввёл его, а потом не использовал. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
| s180 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 2.11.2009 Репутация: нет Всего: нет |
ещё вопрос. мне заранее неизвестно какое количество файлов мне надо качать, я беру это каждый раз из базы (с этим, слава Богу, я сам справился). Как объявлять объект созданного класса при чтении строки из базы, т.е. читаем строку - создаём класс?
|
|||
|
||||
| diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Не совсем понял вопрос.
Для каждой картинки которую надо обновлять из сети через определённые промежутки времени надо создать свой экземпляр класса, указав параметры. Хранить экземпляры надо в специальной коллекции. То есть: Считываются данные из базы, на их основе создаётся экземпляр класса и добавляется в коллекцию, откуда всегда можно получить к нему доступ. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит |
|||
|
||||
![]()
|
| Правила форума VB .NET | |
|
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | VB .NET | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |