Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Программное архивирование файлов

8.6K
20 октября 2006 года
Xavier
69 / / 23.08.2006
Народ, кто-нить знает, как можно в программе, используя внешний архиватор, получать соответственно от этого архиватора прогресс сжатия?
5.9K
20 октября 2006 года
Zushenskiy
161 / / 29.06.2006
Смотри доки, SDK (если таковы есть) к архиватору позволяет ли он лезть другим процессам в нутрь. то есть подьерживает ли ActiveX или чето в этом духе.
8.6K
20 октября 2006 года
Xavier
69 / / 23.08.2006
Ну, вот, к примеру, у меня программа через определённое время делает копию базы, файл получается размером ~450Мб, хочу для сжатия использовать 7z (может кто посоветует лучше) с использованием ShellExecute(...). В этом случае есть возможность получать прогресс сжатия? а то 450Мб всё-таки довольно прилично по времени сжиматься будут...
15K
20 октября 2006 года
bas
22 / / 18.04.2006
[QUOTE=Xavier]Народ, кто-нить знает, как можно в программе, используя внешний архиватор, получать соответственно от этого архиватора прогресс сжатия?[/QUOTE]

если этот архиватор к примеру выводит прогрес в консоль
то можно перенаправить консоль на себя.

п.с. написал бы какой хоть архиватор
а то все ответы это пальцем в небо
8.6K
20 октября 2006 года
Xavier
69 / / 23.08.2006
[QUOTE=bas]если этот архиватор к примеру выводит прогрес в консоль
то можно перенаправить консоль на себя.[/QUOTE]
ага, тока у меня-то не консольное приложение... и куда я буду перенаправлять мне интересно...
А насчёт своего архиватора - ты это загнул... даже если я его сваяю, то как потом назад распаковывать??? Это ж еще и прогу распаковки писать придётся... Да я уж лучше буду внешним вызовом архивировать в 7z или rar или просто zip...
12K
20 октября 2006 года
rjx
55 / / 11.03.2006
[QUOTE=Xavier]ага, тока у меня-то не консольное приложение... и куда я буду перенаправлять мне интересно... [/QUOTE]
Вывод дочернего процесса не обязательно перенаправлять на вывод своего процесса, и он даже не должен(!) быть консольным; как юзать, см. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/createprocess.asp и http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/startupinfo_str.asp
[QUOTE=Xavier]А насчёт своего архиватора - ты это загнул... даже если я его сваяю, то как потом назад распаковывать??? Это ж еще и прогу распаковки писать придётся... Да я уж лучше буду внешним вызовом архивировать в 7z или rar или просто zip...[/QUOTE]
Ты, по-моему, не правильно понял bas-а...

По-поводу твоего вопроса, посмотри тут.
9
21 октября 2006 года
Lerkin
3.0K / / 25.03.2003
Слушай, мне у меня подобная проблема стояла. Я использовал для сжатия/распаковки ZLib (он Open Source) и, вообщем, решил таки проблему с прогресс-баром и т.д. И жмет не плохо и вопросов не было...
8.6K
23 октября 2006 года
Xavier
69 / / 23.08.2006
[QUOTE=Lerkin]Слушай, мне у меня подобная проблема стояла. Я использовал для сжатия/распаковки ZLib (он Open Source) и, вообщем, решил таки проблему с прогресс-баром и т.д. И жмет не плохо и вопросов не было...[/QUOTE]
Код не кинешь? Было б неплохо посмотреть. Т.к. Zlib я качнул, а вот как им пользоваться хз... доков нема...
284
23 октября 2006 года
michael_is_98
587 / / 25.02.2005
Вроде у MS в SDK описаны функции для архивирования файлов. Правда не знаю, что стало с этими функциями в новых версиях Windows.
309
23 октября 2006 года
el scorpio
1.1K / / 19.09.2006
А что мешает работать через командную строку. Вызываем команду
 
Код:
start /wait /b "winrar Params > Output.txt"

Параметры берём из документации к RAR'у. Результат работы со всеми сообщениями окажется в указанном файле
8.6K
24 октября 2006 года
Xavier
69 / / 23.08.2006
[QUOTE=el scorpio]А что мешает работать через командную строку. Вызываем команду
 
Код:
start /wait /b "winrar Params > Output.txt"

Параметры берём из документации к RAR'у. Результат работы со всеми сообщениями окажется в указанном файле[/QUOTE]
То есть ты хочешь сказать, что пока файл архивируется, он будет скидывать в текстовый файл инфу о своём прогрессе, при этом данный текстовый файл будет открыт архиватором. Тогда, как же мне можно будет получить доступ к этому файлу? Ведь если он будет открыт одним процессом, то другой не сможет получить к нему доступ... имхо. А если даже сможет, так это каждый раз придётся открывать файл, считывать данные, закрывать... и так по кругу. Имхо, не гуманное раходование ресурсов!
284
25 октября 2006 года
michael_is_98
587 / / 25.02.2005
Похоже функции LZFileOpenмогут лишь распаковывать файл...
11K
25 октября 2006 года
_io_lock
73 / / 05.10.2006
я бы на твоем месте не парился бы с внешним архивером, а заюзал бы, ну хотя бы например, 7z : http://prdownloads.sourceforge.net/sevenzip/7z442.tar.bz2?download
и доки там имхо есть...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог