|
Как удостоверится, что запись внешнего файла завершена? | ☑ | ||
---|---|---|---|---|
0
RomaH
naïve
25.11.21
✎
08:32
|
Взаимодействие с внешней программой
Пользователь во внешней программе делает экспорт файла в каталог В 1С делаю БП ожидания и обработки экспортируемого файла. Как начать работу с появившимся в каталоге файлом только после того как этот файл полностью записан? |
|||
1
dubolom
25.11.21
✎
08:50
|
Из внешней программы сигнал никак не передать?
|
|||
2
RomaH
naïve
25.11.21
✎
08:55
|
(1) нет
|
|||
3
ДенисЧ
25.11.21
✎
08:56
|
Как вариант - пытаться открыть файл на запись в цикле с паузой...
|
|||
4
ChMikle
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
|
Можно у процесса получить список дескрипторов файлов и поискать наш файл,но,если файл закрывается,а потом открывается снова,то не выйдет.
|
|||
12
acanta
25.11.21
✎
09:20
|
Внешняя программа на другом компьютере и пишет по сети? Или как сейчас модно, сервер дата центра и виртуалка, вообще неизвестно, это тот же компьютер или другой.
|
|||
13
ДедМорроз
25.11.21
✎
09:21
|
Файл,открытый по сети,на сервере можно увидеть в списке открытых файлов,но опять же,смотрим предыдущее сообщение.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |