Orion9
Все-же пришлось применить временный интервал и подобрать задержку. Иначе не подхватывались данные из файла, следующим за косячным.
Hidden text
Code:
; Проверяем наличие файла для записи данных
While 1
If FileExists($sOutFile) Then ExitLoop
; Если появляется ошибка Время ожидания операции истекло"
; без задержки минимум 20 мс данные следующего файла пропускаются,
; а при большей задержки медленнее обрабатываются
Sleep(20)
WEnd
Local $sOutput = ""
; Читаем данные из файла
$hFile = FileOpen($sOutFile)
If $hFile <> -1 Then
$sOutput = FileRead($hFile)
FileClose($hFile)
FileDelete($sOutFile)
EndIf
Но теперь надо понять, можно ли самому обработать ошибку "Время ожидание операции истекло":
Дело в том, что файл данных-то создается и в нем есть рабочие поля, которые плагин ExifToolWDX выводит:
Но файл создается после вывода сообщения об ошибки. Вот важный момент.
В плагине эта проблема решена не очень. Он дергает каждое поле и кривой файл обрабатывается несколько минут. Выше я писал об этом.
Может у вас есть идеи как перехватить обработку ошибки?
Кстати, это и для Ауторан понадобится. Алгоритм ведь останется этим. А закрытие ET я сделал через цикл ожидания, применив новшества ТС 11.57. Да еще и при выходе из ТС обработал. Так что сейчас ничего лишнего в памяти не висит.