D1D1D1D
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Proshaa Цитата: знать, в какой момент времени закончится закачка одного линка и начнётся следующий? | Получается, тогда проверка по времени отпадает и остаётся вариант с подсчётом ссылок. А с ним мне на stackoverflow подсказали код — только его так и не удалось задействовать. Может взглянет кто, потому что в таком виде не работает: Код: Const ReferencesCount = 1000000 ' ссылок на файл ' Dim Buffer ' буфер приёма и парсинга ссылок ' Dim NextRef ' буфер под выделение ссылки ' Dim RefCount ' количество ссылок, записанных в файл ' Dim FSO,stdin,Count,CurrFile ' переменные из исходного кода ' Set FSO = CreateObject("Scripting.FileSystemObject") Set stdin = FSO.GetStandardStream(0) Count = 0 Set CurrFile = FSO.CreateTextFile("lst" & CStr(Year(Date())) & "-" & Right("0" & CStr(Month(Date())), 2) & "-" & Right("0" & CStr(Day(Date())), 2) & "_" & Replace(Time,":","-") & Count & ".htm",1) Do Until stdin.AtEndOfStream Buffer = Buffer & stdin.Read(1024) NextRef = ExtractRef(Buffer) Do Until NextRef = "" CurrFile.Write NextRef & vbNewLine ' по одной ссылке на строку ' RefCount = RefCount + 1 If RefCount>= ReferencesCount Then CurrFile.Close Count = Count + 1 Set CurrFile = FSO.CreateTextFile("lst" & CStr(Year(Date())) & "-" & Right("0" & CStr(Month(Date())), 2) & "-" & Right("0" & CStr(Day(Date())), 2) & "_" & Replace(Time,":","-") & Count & ".htm",1) RefCount = 0 End If NextRef = ExtractRef(Buffer) Loop Loop CurrFile.Close Function ExtractRef(ByRef Buffer) Dim Border ' Граница первой ссылки в буфере ' Buffer = Trim(Buffer) Border = Instr(Buffer, " ") ' если разделитель ссылок - пробел ' If Border = 0 Then ExtractRef = "" Else ExtractRef = Trim(Left(Buffer, Border)) Buffer = Mid(Buffer, Border) End If End Function | | Всего записей: 1477 | Зарегистр. 05-04-2010 | Отправлено: 19:11 05-04-2018 | Исправлено: D1D1D1D, 19:14 05-04-2018 |
|