Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Открывать файл пока не откроется

Ответить
Настройки темы
VBS/WSH/JS - [решено] Открывать файл пока не откроется

Аватара для Morpheus

Ветеран


Сообщения: 12426
Благодарности: 2328


Конфигурация

Профиль | Отправить PM | Цитировать


Всем привет!

Есть скрипт читающий данные из файла с заданным интервалом. Запущен постоянно, переделать этот момент нельзя.
Код: Выделить весь код
iTimerID = window.SetInterval("GetData", 5000)
<...>
  Set objFile = objFSO.OpenTextFile("путь\файл.log", 1)
Всё хорошо пока файл на локальной машине, при выходе из сна проблем тоже нет.
Если файл в сети, то тоже всё работает, но только до сна. При выходе из спячки данные перестают обновляться. Логично предположить, что некоторое время (несколько секунд) сетка не доступна и файл по этой причине не читается.
Как устроить повтор попыток чтения пока файл не прочитается (задать некий таймаут)?

Спасибо!

Отправлено: 23:41, 02-02-2012

 

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


А что говорит сразу после выхода из сна простая проверка существования файла:

Код: Выделить весь код
If objFSO.FileExists("путь\файл.log") Then
    MsgBox "File [путь\файл.log] found"
Else
    MsgBox "File [путь\файл.log] not found"
End If
Если сразу — не найден, а спустя время — доступен, то, может, поскольку интервал у Вас небольшой, при недоступности файла просто пропускать чтение до следующего вызова обработки:
Код: Выделить весь код
Sub GetData()
    …
    If objFSO.FileExists("путь\файл.log") Then
        Set objFile = objFSO.OpenTextFile("путь\файл.log", 1)
        …
        …
        objFile.Close
    End If
    …
End Sub
?
Это сообщение посчитали полезным следующие участники:

Отправлено: 03:19, 03-02-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Morpheus

Ветеран


Сообщения: 12426
Благодарности: 2328

Профиль | Отправить PM | Цитировать


Цитата Iska:
сразу — не найден, а спустя время — доступен »

Спасибо большое! Пришлось повозиться, всё заработало когда добавил:
Код: Выделить весь код
    If objFSO.FileExists("путь\файл.log") Then
        Set objFile = objFSO.OpenTextFile("путь\файл.log", 1)
        …
        …
        objFile.Close
Else
Data = "--- --- --- --- ---"
    End If

Отправлено: 14:49, 03-02-2012 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - [решено] Открывать файл пока не откроется

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Чем открывать файл PAK?????? Igor32123 Хочу все знать 23 22-07-2012 07:46
Чем открывать файл ? zxzx Хочу все знать 3 30-08-2010 14:18
Доступ - [решено] Проблема с сетью: открываешь Workgroup и ждешь минуту пока откроется kimi2010 Microsoft Windows 2000/XP 22 24-03-2010 18:40
HDD - Пока форматируется - уснуть можно tref2me Накопители (SSD, HDD, USB Flash) 4 28-02-2008 16:38




 
Переход