Вход | Регистрация
 

Как удостоверится, что запись внешнего файла завершена?

Как удостоверится, что запись внешнего файла завершена?
Я
   RomaH
 
25.11.21 - 08:32
Взаимодействие с внешней программой

Пользователь во внешней программе делает экспорт файла в каталог

В 1С делаю БП ожидания и обработки экспортируемого файла.
Как начать работу с появившимся в каталоге файлом только после того как этот файл полностью записан?
   dubolom
 
1 - 25.11.21 - 08:50
Из внешней программы сигнал никак не передать?
   RomaH
 
2 - 25.11.21 - 08:55
(1) нет
   ДенисЧ
 
3 - 25.11.21 - 08:56
Как вариант - пытаться открыть файл на запись в цикле с паузой...
   ChMikle
 
4 - 25.11.21 - 08:56
+(3) или скопировать
   ДедМорроз
 
5 - 25.11.21 - 08:58
Если программа при записи блокирует файл,то можно попробовать его прочитать.
А так Scripting.FileSystemObject и OpenTextFile с параметром 8 - это открытие на дозапись,если кто-то пишет,то будет сгенерировано исключение.
   МимохожийОднако
 
6 - 25.11.21 - 08:58
Положи рядом файл-флажок после записи и ориентируйся на него. После чтения полученного файла стирай оба файла
   ДедМорроз
 
7 - 25.11.21 - 08:59
Если программа "отпускает" во время записи файл,то никак,если его "подхватить", то будет ошибка в той программе.
   МимохожийОднако
 
8 - 25.11.21 - 09:01
Однажды делал так для больших файлов. Записываю файл с особенным расширением. А после полной записи переименовываю в нужное расширение.
   Смотрящий
 
9 - 25.11.21 - 09:01
Счиитывать параметры файла дважды, трижды и т.п.
Пока они не уравняются, считать файл
   ДедМорроз
 
10 - 25.11.21 - 09:17
Вопрос другой - внешняя программа после записи завершается или нет?
И на этой же она машине?
Просто,увидеть завершение процесса гораздо проще,чем мониторить файл.
Если доступа к изменению внешней программы нет,то следить за процессом - один из вариантов.
   ДедМорроз
 
11 - 25.11.21 - 09:20
Можно у процесса получить список дескрипторов файлов и поискать наш файл,но,если файл закрывается,а потом открывается снова,то не выйдет.
   acanta
 
12 - 25.11.21 - 09:20
Внешняя программа на другом компьютере и пишет по сети? Или как сейчас модно, сервер дата центра и виртуалка, вообще неизвестно, это тот же компьютер или другой.
   ДедМорроз
 
13 - 25.11.21 - 09:21
Файл,открытый по сети,на сервере можно увидеть в списке открытых файлов,но опять же,смотрим предыдущее сообщение.

Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.