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

Вниз

WinRAR запускается через раз   Найти похожие ветки 

 
VitAngel   (2007-02-14 17:44) [0]

Вечер Добрый!

Проблема такая: использую функцию ShellExecute для архивирования нескольких файлов, но она почему то запускает её через раз. Пожалуйста, подскажите в чём проблема...

Запускаю так:
ShellExecute(0,"open","WinRAR.exe",PChar("a -y -- Archive\Archive.rar @Archive\Archive.txt"),nil,SW_SHOW);


 
umbra ©   (2007-02-14 18:54) [1]

в приведенном коде проблем нет :)
Если включить телепатор, то: нет ли в списке файлов, в именах которых (или в путях к которым) есть пробелы?


 
Германн ©   (2007-02-15 01:45) [2]


> umbra ©   (14.02.07 18:54) [1]
>
...
> Если включить телепатор, то: нет ли в списке файлов, в именах
> которых (или в путях к которым) есть пробелы?
>

Сумлевается мой телепатор, однако, насчёт пробелов. Список файлов формируется как набор строк, а строку всегда можно однозначно прочитать без зависимости от наличия в ней пробелов! Имхо.
Больше всего меня настораживает то, что третьим параметром функции ShellExecute идёт не полное имя выполняемого файла. А у WinRar есть настройки - какую директорию считать текущей (current) при запуске.


 
Германн ©   (2007-02-15 02:43) [3]

И ещё важен, имхо, в приведённом примере пятый параметр!


 
Alex Konshin ©   (2007-02-16 12:32) [4]

Вообще-то странно для паковки файлов использовать его UI вариант.
И тем более странно использовать для этого ShellExecute. Товарищ ленится, а потом удивляется, почему не работает. Кстати, а товарищ ждет завершения процесса?


 
VitAngel   (2007-02-16 13:51) [5]

Что ты имеешь в виду под "ждёт завершение процесса"???


 
Сергей М. ©   (2007-02-16 15:29) [6]


> запускает её через раз


"Ты суслика видишь ? И я не вижу. А он есть !" (анекд.)

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


 
VitAngel   (2007-02-16 16:01) [7]

Дело в том, что на какие-то доли секунды форма архивации запускается и тут же исчезает...не понятно почему...


 
Сергей М. ©   (2007-02-16 16:26) [8]


> VitAngel   (16.02.07 16:01) [7]


> на какие-то доли секунды форма архивации запускается


Т.е. суслика ты таки видишь ?

Ну и какого хрена ты тогда утверждаешь, что "через раз" ?
Запускается же ? Запускается ведь !!

А дальше чеши репу про параметры запуска)


 
Валькирия ©   (2007-06-13 15:19) [9]

а как узнать что архивация закончена?
мне надо заархивировать файлы, а потом их удалить. но если делаю попорядку команды, то накладка происходит. что делать?


 
Dimaxx ©   (2007-06-13 16:44) [10]

У меня помню траблы были в аналогичном примере. Программе никак не передавались параметры ком. строки. Поставил пробел в начале строки параметров и все заработало.


 
Углук ©   (2007-06-13 19:56) [11]


> а как узнать что архивация закончена?
> мне надо заархивировать файлы, а потом их удалить. но если
> делаю попорядку команды, то накладка происходит. что делать?
>
> <Цитата>


1. В цикле архивируем файлы. Цикл заканчивается
2. Закрываем WinRar
3. Удаляем файлы.



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

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

Наверх




Память: 0.49 MB
Время: 0.017 c
6-1177336439
socket
2007-04-23 17:53
2007.12.30
TServerSocket and TClientSocket


8-1172084201
ы
2007-02-21 21:56
2007.12.30
картинка над фоном


15-1196334539
de.
2007-11-29 14:08
2007.12.30
Ребят, поможите...


2-1196718370
ProgRAMmer Dimonych
2007-12-04 00:46
2007.12.30
От теории к практике


15-1196174279
All More system
2007-11-27 17:37
2007.12.30
Детект руткитов