Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: HELP! Microsoft Internet Transfer Control 6.0 Добавлено: 18.10.08 20:56  

Автор вопроса:  werber | Web-сайт: www.werbersoft.ru
С помощью Microsoft Internet Transfer Control 6.0 закачиваю файл. Функция выглядит следующим образом:

Public Function Downloads()
Dim b() As Byte
Form1.Inet1.Protocol = icHTTP
Form1.Inet1.URL = "www.sample.ru\sample.txt" 'это пример, в действительности закачивается реальный текстовый файл
b() = Form1.Inet1.OpenURL(Form1.Inet1.URL, icByteArray)
Open App.Path + "\sample.txt" For Binary Access Write As #1
Put #1, , b()
Close #1
End Function


Это всё конечно замечательно, НО: при эта функция вызывается при нажатии на кнопку. При этом, если старая закачка не завершилась, а я нажимаю опять на кнопку появляется сообщение "Run-time error '35764'; Still executing last request". Тоесть попросту проге не нравится, что я повторил скачивание, не дождавшись конца предыдущего. У меня появилась такая мысль, что можно просто пока идёт закачка, ставить Enable кнопки равный False, дабы не провоцировать ошибку. Но я не знаю как отследить, что идёт скачивание. Как это сделать? Помогите, пожалуйста!

Ответить

  Ответы Всего ответов: 3  

Номер ответа: 1
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #1
Добавлено: 18.10.08 21:47
  1. Dim bWorking As Boolean
  2.  
  3. Private Sub Command1_Click()
  4.     Dim bData() As Byte
  5.     'установка протокола для Inet1
  6.     Form1.Inet1.Protocol = icHTTP
  7.     'установка URL для Inet1
  8.     Form1.Inet1.URL = "www.domkratt.com/blog"
  9.     'проверяем значение флага bWorking
  10.     'если bWorking ложно, то начинаем скачивание
  11.     If bWorking = False Then
  12.     'устанавливаем флаг bWorking - скачивание началось
  13.         bWorking = True
  14.         'выключаем кнопку, стартующую закачку
  15.         Command1.Enabled = False
  16.         'скачиваем файл в массив bData
  17.         bData() = Form1.Inet1.OpenURL(Form1.Inet1.URL, icByteArray)
  18.         'снимаем флаг bWorking - скачивание закончилось
  19.         bWorking = False
  20.         'ыключаем кнопку, стартующую закачку
  21.         Command1.Enabled = True
  22.     End If
  23.     'записываем данные из массива bData в файл
  24.     Open "d:\sample.txt" For Binary Access Write As #1
  25.     Put #1, , bData()
  26.     Close #1
  27. End Sub

Ответить

Номер ответа: 2
Автор ответа:
 werber



Вопросов: 71
Ответов: 112
 Web-сайт: www.werbersoft.ru
 Профиль | | #2
Добавлено: 19.10.08 00:05
Executioner, ОГРОМНЕЙШИЙ ТЕБЕ РЕСПЕКТ! Спасибо тебе большое. Я не забываю людей, которые мне помогли. Если чё, обращайся. Чем смогу, помогу.

Ответить

Номер ответа: 3
Автор ответа:
 



Администратор

ICQ: 278109632 

Вопросов: 42
Ответов: 3949
 Web-сайт: domkratt.com
 Профиль | | #3
Добавлено: 19.10.08 01:16
Всегда рады... =)

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам