Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Разбитые винраром архивы на part [D7, XP]


Rhammer ©   (2008-04-11 22:34:00) 

Вновь обращаюсь к вам за помощью.
У меня есть массив со списком путей до архивов..
После этого каждый элемент массива разархивируется путем запуска винрара через CreateProcess ..
Но если у меня архив разбит на куски то бишь asd.part1.rar, asd.part2.rar, asd.part3.rar, то прога моя сначала как положено запускает рар для разархивации 1 элемента массива (asd.part1.rar), винрар как положено разархивирует 1 часть потом вторую и третью, посылает код завершения в прогу, она проходит к следующему элементу массива part2.rar опять запускает рар... и естественно данные бьются.
Как мне добиться что-бы из массива удалялись лишние значения?
Я думал алгоритм на проверку в строке слова part, но могут быть косяки...
Заранее спасибо
procedure TForm1.Button3Click(Sender: TObject);
var
i : integer;
dirrar: string;

begin
DirRar := 'C:\Program Files\WinRAR\WinRar.exe';
Button3.Caption:='Дождитесь окончания операции';
Dir := Button2.Caption;
//Запуск винрара
for i := 1 to StrToInt(label2.Caption) do
begin
  NameFile:=Button2.Caption+archives[i];
  Label3.Caption := NameFile;
  CrProcess(DirRar,'x -ad -y -ilog'+dir+ 'rar.log '+ '"'+ NameFile+'"' + ' ' + Dir, dir,'(Сеанс завершен) - Rar');
  if CheckBox5.Checked=True then DeleteFile(NameFile);
end;
end;


Reindeer Moss Eater   (2008-04-11 23:23:00) [1]

ой мама дорогая......

rar x *.rar -y

и все!
и не надо никаких массивов


Johnmen   (2008-04-11 22:57:00) [2]

Посмотри, как сформированы имена в многотомном архиве.
Отсюда алгоритм формирования просто очевиден...


Rhammer   (2008-04-11 22:46:00) [3]

Это я и хочу сделать :) Вот проблема как раз в том чтобы определить ненужные значения. Только как не могу представить.


Johnmen   (2008-04-11 22:45:00) [4]

Надо добиться, чтобы в массив не добавлялись ненужные значения.


Наверх

Титульная страница Поиск, карта сайта Написать письмо