Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.17;
Скачать: CL | DM;

Вниз

Раскрытие, затем удаление архива...   Найти похожие ветки 

 
Владимир   (2006-05-18 16:08) [0]

Нужен код, который раскрывает архива RAR, а затем удаляет архив. Я написал, но проблема в том, что удаление файла срабатывает раньше чем раскрытия архива...
Как обойти данную проблему ? Заранее благодарен

shellExecute(Form1.Handle,
                             nil,
                            Pchar("WinRAR"),
                            Pchar("e -o+ -df  "+path+filename+" "+ Path),
                            nil,
                            SW_SHOWNOACTIVATE);

If FileExists(Path+fileName) then DeleteFile(Pchar(Path+FileName))


 
iXT   (2006-05-18 16:26) [1]

НУ и чего тут удивительного!
Пока у тебя запускается сам WINRAR файл и удаляется.
А если WINRAR вообще не установлен!?

1. Используй не WINRAR, а компоненты работающие с rar-архивами.
2. Если уж без WINRAR никак, то смотри пока не исчезнет процесс
3. (Ну если программа "просто так" то поставь задержку таймером на удаление. Кажется WINRAR для работы создает временную папку и далее работает с ней (но не факт при работе из командной строки), И вообще несоветую его (3)


 
Владимир   (2006-05-18 16:38) [2]

Спасибо.
Но как отследить ???, закончил работу WINRAR или нет...Задержка таймером мне не подходит, у меня много таких архивов будет и какое время ставить для раскрытия одного архива ? 10с, 30с, 1 час ?
Размеры архива от 1кб до 100мб..

winrar или нет это другой вопрос.

Мне нужно узнать: как можно определить запущенная какая-то программа закончила уже свои дела или нет....


 
Игорь Шевченко ©   (2006-05-18 16:50) [3]


> как можно определить запущенная какая-то программа закончила
> уже свои дела или нет....


CreateProcess + WaitForSignleObject

ShellExecuteEx + WaitForSingleObject



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

Текущий архив: 2006.09.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.036 c
2-1156418132
Hadroran
2006-08-24 15:15
2006.09.17
Другая форма на компоненте Panel


1-1154508723
IGray
2006-08-02 12:52
2006.09.17
Ищу компонент - ресайзовый уголок (как в TScrollBar)


2-1156438482
tmpl
2006-08-24 20:54
2006.09.17
сдвиг в DWord


2-1155498717
Handle
2006-08-13 23:51
2006.09.17
PopupMenu


2-1157067421
Adios
2006-09-01 03:37
2006.09.17
Как сделать инспектор свойств?