Модераторы: Snowy, MetalFan, bems, Poseidon

Поиск:

Закрытая темаСоздание новой темы Создание опроса
> Работа с внешним архиватором, программа резервного копирования файлов 
:(
    Опции темы
HuligankaDianka
  Дата 7.3.2009, 05:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 7.3.2009

Репутация: нет
Всего: нет



У меня на работе возникла необходимость написать программу резервного
копирования файлов,суть которой в следующем:
- указываем необходимые для архивации папки
- передаем их в виде параметров с помощью процедуры ShellExecute
внешнему архиватору ждем пока работа внешнего приложения закончится
- созданный файл переименовываем и перемещаем в папку где хранятся файлы резервных
копий.



....Может, у кого есть исходник???или подскажете, с чего начать...я в принципе понимаю,как это сделать,но сомневаюсь.....очень надо срочно.....хотя бы какие параметры должны быть в файле конфигурвции...как предусмотреть любой архиватор....все это писать с помощью команд архиваторов и shellexecute(), или как-то по-другому....



Очень надеюсь, что бедной девушке помогут........ smile 
PM MAIL   Вверх
~FoX~
Дата 7.3.2009, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЕ рыжий!!!
****


Профиль
Группа: Участник Клуба
Сообщений: 2819
Регистрация: 8.10.2003
Где: Зеленоград

Репутация: 5
Всего: 68



HuligankaDianka, 
1. Читайте правила форума  smile  Нельзя создавать одинаковые темы!!!
2. Где код, что не получается?
3. Ко всем архиваторам есть мануал с описанием ключей командной строки...
4. Все это проще реализовать не на делфи а простыми скриптами...ИМХО...


--------------------
user posted image
…множественность никогда не следует полагать без необходимости…
PM MAIL WWW ICQ Jabber   Вверх
bems
Дата 7.3.2009, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 18
Всего: 88



пиши батник


--------------------
Обижено школьников: 8
PM MAIL   Вверх
HuligankaDianka
Дата 8.3.2009, 07:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 7.3.2009

Репутация: нет
Всего: нет



В руководстве RAR написано:
 v[t,b]  Вывести подробный список содержимого архива [с технической 
           информацией]
У меня не работает:
ShellExecute(Form1.Handle, PChar('open'),
              PChar(DirArchivator),
              Pchar('x -r  -m5 -vt >1.lst  '+DirArchiveUpdate+' '+DirUpdate), nil, SW_Hide );
Для WinRAR пишет, что такой команды нет, или что архивы не найдены...а в RAR вообще ничего не делает...
Как воспользоваться этой командой?
PM MAIL   Вверх
MetalFan
Дата 8.3.2009, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: 22
Всего: 128



Цитата(HuligankaDianka @  8.3.2009,  07:21 Найти цитируемый пост)
У меня не работает

что-то у вас каша какая-то...
Rar.exe vt ARHFILENAME >list.txt
выведет список файлов в архиве ARHNAME в файл list.txt

Это сообщение отредактировал(а) MetalFan - 8.3.2009, 10:50


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
HuligankaDianka
Дата 10.3.2009, 02:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 7.3.2009

Репутация: нет
Всего: нет



А как узнать список файлов с директориями в архиве?
И потом сделать резервную копию таких же файлов с такой же структурой каталогов в папке на диске?
PM MAIL   Вверх
Данкинг
Дата 10.3.2009, 02:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(HuligankaDianka @  10.3.2009,  02:19 Найти цитируемый пост)
А как узнать список файлов с директориями в архиве?

Тебе же MetalFan пример написал. Выводишь в текстовый файл, потом его парсишь.

Это сообщение отредактировал(а) Данкинг - 10.3.2009, 02:23


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
CompWorm
Дата 10.3.2009, 16:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Допеределыватель
***


Профиль
Группа: Участник Клуба
Сообщений: 1689
Регистрация: 6.12.2004
Где: /

Репутация: 2
Всего: 31



я в свое время ковырял мануал РАРа на вопрос распаковки архива и РАРовского мануала вполне достаточно, ИМХО, для абсолютного большинства задач. 
вот что я накалякал для распаковки:
Код

PAT:=ExtractFilePath(Application.ExeName); //путь к файлу *RAR
PATS:='"C:\Program Files\WinRAR\winrar.exe" x "'+PAT+'TEMP_UPDATE.zip" *.* "'+PAT+'" -y';
PATA:=Pchar(PATS);
WinExec(PATA, SW_SHOWNORMAL);

попробуй как-то повдумчивей почитать мануал и на основе этого кода запаковать свои данные.

Добавлено через 4 минуты
Цитата(bems @  7.3.2009,  12:37 Найти цитируемый пост)
пиши батник

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


--------------------
PM MAIL   Вверх
HuligankaDianka
Дата 20.3.2009, 01:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 7.3.2009

Репутация: нет
Всего: нет



Архиватор должен задаваться в ini, его команды тоже.
      (также с zip, arj, чтобы
      не пришлось при изменении архиватора изменять исходный
      код программы).

Что в таком случае делать?
PM MAIL   Вверх
Данкинг
Дата 20.3.2009, 02:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(HuligankaDianka @  20.3.2009,  01:57 Найти цитируемый пост)
Что в таком случае делать? 

Как что? Вероятно, поискать по форуму посты о работе с INI-файлами. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
THandle
Дата 20.3.2009, 08:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 50
Всего: 372



PM   Вверх
HuligankaDianka
  Дата 21.3.2009, 06:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 7.3.2009

Репутация: нет
Всего: нет



как с ini работать я знаю (спасибо большое)....я не понимаю как предусмотреть возможности всех архиваторов....как это вообще должно выглядеть..
где взять консольные команды для всех архиваторов????
программа должна считать из ini директорию к архиватору и параметры (команды) например для распаковки архива и соответственно распаковать...в ini все прописывается вручную (директории и все остальное)...но команды  для всех архиваторов должны быть уже прописаны...это что, для каждого архиватора делать секцию с параметрами?а потом в программе написать цикл,кот. в зависимости от названия архиватора передает из соответствующей секции ini все параметры и т.д.?как это выглядит ??????код...пример...
PM MAIL   Вверх
Данкинг
Дата 21.3.2009, 12:01 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130



Цитата(HuligankaDianka @  21.3.2009,  06:33 Найти цитируемый пост)
где взять консольные команды для всех архиваторов????

Наверное, в хелпе для этих архиваторов.

Цитата(HuligankaDianka @  21.3.2009,  06:33 Найти цитируемый пост)
это что, для каждого архиватора делать секцию с параметрами?

Лично я другого пути не вижу. smile Секция RAR - параметр "развернуть". Секция ZIP - параметр "развернуть". И т.д.

Цитата(HuligankaDianka @  21.3.2009,  06:33 Найти цитируемый пост)
а потом в программе написать цикл,

Ну типа того... 

Цитата(HuligankaDianka @  21.3.2009,  06:33 Найти цитируемый пост)
как это выглядит ??????

Это тебе домашнее задание на выходные. smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
HuligankaDianka
Дата 22.3.2009, 01:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 7.3.2009

Репутация: нет
Всего: нет



Спасибо....за домашнее задание...я думала тут сидят реальные программеры,для которых этот кусочек кода не составит труда...а тут не умнее меня..наверное...я и сама знаю, что наверное это должно быть так...ну и ладно..сама справлюсь...
PM MAIL   Вверх
Данкинг
Дата 22.3.2009, 01:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 11
Всего: 130




Модератор: Сообщение скрыто.



--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Закрытая темаСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0612 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.