powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / проверка наличие файла\страницы в инете
25 сообщений из 37, страница 1 из 2
проверка наличие файла\страницы в инете
    #37758024
Фотография Qlewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как проверить наличие файла в интернете? есть код закачки файла с инета на комп
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Dim oXMLHTTP As Object
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
oXMLHTTP.Open "GET", "http://qlewer.mgn-host.ru/moi file.txt"
oXMLHTTP.Send
Do While oXMLHTTP.readyState <> 4
    DoEvents
Loop
With CreateObject("ADODB.Stream")
     .Mode = 3
     .Type = 1
     .Open
     .Write oXMLHTTP.responseBody
     .SaveToFile "C:\Sys\" & "moi file.txt", 2
End With

пытался скачать файл, а потом проверить его наличие на компе(да, изначально неправильный подход + файл создавался в любом случае, даже если файл удалён с хостинга! видимо, сохраняется в какой-то переменной). а как просто проверить наличие файла?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37758032
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qlewer,

Читай номер ответа от сервера, oXMLHTTP.status, если 200 то страница имеется, если 404 то соответственно не найдена. А вообще проверить надо на каждом конкретном сервере что выдаёт
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37758033
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Вызывайте метод Open синхронно;
2) Анализируйте возвращаемый методом код ошибки.
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37758036
qwerty112
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
qlewer,

URLDownloadToFile чем-то не подошел ?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37758047
Фотография Qlewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VSVLAD,

напиши плз код этой строчки.

Akina1) Вызывайте метод Open синхронно; т.е. синхронно? а ошибок я не вижу. код отрабатывал, если не изменяет память, в любом случае, даже без onerror
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37758072
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
qlewerт.е. синхронно?
Метод Open имеет 5 параметров. Ты даёшь ему только 2 обязательных.

qlewerа ошибок я не вижу
Ты их не смотришь. Потому и не видишь.

qlewerкод отрабатывал, если не изменяет память, в любом случае
Код отрабатывает потому, что он выполняется асинхронно. объекту даётся команда, и управление тут же возвращается в код. А объект там себе фигачит. А ты, как [censored], ждёшь, когда он тебе сообщит, что readyState <> 4...
Он не сработал бы только в случае, если объекту не смогла быть передана команда.

qlewerдаже без onerror
On Error в принципе не способен поймать ошибку, возникшую в объекте.

PS. Скопипастив код, не поленись сперва разобраться, как он работает. Почитать маны. И только потом делать на его основе что-то своё.
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37760356
Фотография Qlewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

спс. пока не опробовал. возникнут вопросы по теме - напишу.
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781169
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. правильно я понял, что для того, чтобы проверить наличие файла в инете, мне придётся постоянно перезапускать прогу? WTF?.. мб подскажет кто способ попроще?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781205
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Перезапускать компьютер процедуру.
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781211
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,

в соседнем топике ведь обсуждали, что это не помогает. пока прогу не перезапустить, она продолжает возвращать одно и то же, а значит, и наличие файла будет возвращать самое первое, полученное при запуске, и плевать она хотела на то, что файл сто раз с тех пор создавался. или это распространяется только на содержимое файлов, а не на их наличие?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781224
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781240
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,

что это? чем это поможет нормально проверить наличие файла?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781266
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
2.
    .setRequestHeader "Cache-Control", "no-store, no-cache"
    .setRequestHeader "Pragma", "no-cache"
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781275
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,

можешь объяснить, что делают эти строки?) плз
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37781278
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy,

как я понял, если впихнуть их в код, каждый следущий запрос будет выполняться "заново", без кэша. но что за "Pragma"?..
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784001
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Antonariy
Код: vbnet
1.
2.
    .setRequestHeader "Cache-Control", "no-store, no-cache"
    .setRequestHeader "Pragma", "no-cache"

не помогло. "наличие файла" сохраняется, даже после удаления его с хостинга. т.е. запустил один раз, удалил файл с с хоста, а прога по прежнему считает, что файл существует. и наоборот: если файл появился, прога об этом не узнает. есть идеи?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784194
Фотография AndreTM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Очищать кэш не через опции, а принудительно - именно каталог, и именно из "самой проги" (естественно, в "проге" должна быть "такая опция"), анализируя блокировку файлов... И перед этим - не забыть сбросить буфера, закрыть хэндлы файлов, располагающихся в кэше, в "самой программе"... И не забывать делать Update, чтобы быть уверенным, что клиент анализирует те же данные, что и реально имеются...

Вообще, чем вы там занимаетесь? Тупо копипастите куски кода и докладываете нам о результатах работы этой солянки сбороной?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784196
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 UTC")
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784207
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VSVLAD
Код: vbnet
1.
.setRequestHeader("If-Modified-Since", "Thu, 1 Jan 1970 00:00:00 UTC")

такая строка даже не записывается
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784217
Фотография VSVLAD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero,
Ну естественно скобки убери. Строку взял из былого проекта на VB.NET
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784218
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VSVLAD,

работает!!!!! спасибо)))
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784363
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero, итого - можете выложить окончательную правильную проверку?
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37784521
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так же не знаю как по уму пишется адрес на хостинг, ну вот закачиваю специально файл, как программно узнать, что есть файл
.....1.txt
что нет файла
.....2.txt
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37785028
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
катастрофа,

перечитай мои последние топики - в них готовые коды с объяснением каждой строчки. либо могу выложить код, когда буду в городе(завтра, мб)
...
Рейтинг: 0 / 0
проверка наличие файла\страницы в инете
    #37785068
катастрофа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BelowZero, там в каждом посте охи, ахи, да и том как путь пишется не сказано нигде
>могу выложить код, когда буду в городе(завтра, мб) - на этом и остановимся
...
Рейтинг: 0 / 0
25 сообщений из 37, страница 1 из 2
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / проверка наличие файла\страницы в инете
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]