Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.01 c
15-1196153253
Evanescence
2007-11-27 11:47
2007.12.30
Сколько стоит лицензионная Windows 2003 Server?


15-1196442691
Pazitron_Brain
2007-11-30 20:11
2007.12.30
Не заплатил за инет...


15-1196016368
@!!ex
2007-11-25 21:46
2007.12.30
Прокомментируйте сборку


2-1196706403
BD
2007-12-03 21:26
2007.12.30
Поиск в базе данных (MS Access)


2-1197013873
Rimd
2007-12-07 10:51
2007.12.30
OnMouseUp




   Наверх