Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Вниз

WinRar   Найти похожие ветки 

 
AndrewBee   (2002-01-26 15:28) [0]

Народ памагите Христа ради :о)
Тема следующая :
Собирается список архивных файлов RAR
Далее каждый файл разворачивается во временную папку
(в архивах файлы DBF)
далее по тексту идут ряд процедур которые обрабатывают файлы DBF

выглядит примерно так :

проседура разворвчивающая архив
procedure ExtractRar(NameFileRar:string);
begin
WinExec("winrar -e "+NameFileRar+" "+PathTempDbf,1);
end;

Список Rar архивов
ListRar:TStringList;

далее выглядит так примерно :

procedure RarInTemp;
var i:integer;
begin
for i:=0 to ListRar.Count-1 do
begin
ExtractRar(ListRar[i]);
Proc1;
Proc2;
..
.. и т.д. тут куча проседур которые обрабатывают файлы во временной папке
..
end;
end;

Заковыка в чём - архиватор запускается начинает разворачивать архив и тут же запускаются проседуры которые идут далее по тексту :о(((((((
RAR орёт - Не могу создать файл , он используется другим процессом !!! :о((((
Может кто нить кинет нормальный примерчик что бы моя прога подождала пока WinRar не закончит работу ???
А то уже задолбался :о((( чё то только не пробовал :о((
нпример надыбал такой способ

procedure TForm1.ExtractRar(NameFile:string);
var Handle :THandle;
begin
Handle:=WinExec(PChar(PathProgram + "\Winrar.exe e -o+ -ep " + NameFile + " "+PathTempDBF), SW_SHOWNORMAL);
if (Handle > 0) and (Handle < 32) then
while GetModuleHandle(PChar("winrar.exe")) <> 0 do Delay( 100 );
end;

один чёрт не работает :о((((
скачал с sources.ru пример работы с unrar.dll
но он такой геморойный :о((( пока не можу разобраться с ним :о((((


 
Vad   (2002-01-26 16:24) [1]

1. Можно использовать функции unrar.dll
2. Запускать rar в отдельном потоке и ожидать завершения
про это уже много раз было, пример должен быть в FAQ


 
Dimaond Cat   (2002-01-27 01:13) [2]

конкретнее, надо пользоваться Waitforsingleobject, на этой конфе это действительно обсуждалось


 
AndrewBee   (2002-01-27 07:50) [3]

Лана полазиим по конференции :о))
Waitforsingleobject тоже пробовал , но тоже что то не помогла она :о((
Спасиба !! щас пошарюсь хорошенько по темам !


 
perov   (2002-01-27 12:56) [4]

Исходные тексты UnRAR, библиотеку UnRAR.dll, несжатые версии SFX-модулей
(только английские) и программу преобразования архивов RCVT можно
загрузить с сайта WinRAR по адресу http://www.rarsoft.com.



 
AndrewBee   (2002-02-09 08:33) [5]

Спасиба :о))
Справился я с WinRarom :о))
Дёрнул с их фирменного сайта примерчик для Дельфы (для Unrar.dll)
только переделал койчего и классом оформил :о))
Работает неплохо :о))



Страницы: 1 вся ветка

Форум: "WinAPI";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
4-33026
xpyctuk
2002-02-08 14:07
2002.04.11
message hook


3-32676
SZap
2002-03-20 18:45
2002.04.11
Grid


3-32640
Malder
2002-03-15 20:45
2002.04.11
Ограничение полномочий пользователей...


3-32673
grabovsky
2002-03-20 16:32
2002.04.11
сохранение данных в StringGrid


1-32904
CrazyAngel
2002-03-29 23:33
2002.04.11
Прочитать самого себя :)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский