|
![]() |
#1 |
Участник
|
Цитата:
Сообщение от Logger
![]() Работает пакетная обработка (тестировали как в IL, так и в p-code)
1. Собирает информацию в аксапте. 2. Формирует в темп папке csv файл при помощи класса TextIo 3. Закрывает файл TextIo (finalize + обнуление файловой переменной, хотя после finalize она и так null) 4. Пакует csv файл в zip архив вызовом 7zip архиватора 5. Удаляет csv файл. 6. Кладет zip архив в базу аксапты. Обнаружилась проблема: случайным образом архиватор при упаковке не может получить доступа csv файлу и поэтому создает пустой архив размером 22 байта. Попробовал WinRar Та же проблема. Не может получить доступ к файлу. ![]() Код: -ssw : compress shared files -sse : stop archive creating, if it can't open some input file Цитата:
Последний раз редактировалось gl00mie; 20.01.2023 в 16:16. |
|
|
За это сообщение автора поблагодарили: Logger (15), Товарищ ♂uatr (4). |
![]() |
#2 |
Участник
|
Вот я это чувствовал!
Раз Total Commander мог файл просмотреть и скопировать, значит и архиватор должен был уметь. Не хватило терпения дочитать все описание ключей командной строки. Но, вообще, мне кажется, что безопаснее использовать .net классы для создания файлов. Если блокировка с файла не снята, то фиг знает, что там еще не доделано. Может не сделан flush на диск последней порции записываемых данных (хотя я это не проверял). |
|
Теги |
7zip, finalize, garbage collector, gc, rar, textio, winrar, архивирование |
|
|