Вниз
Скачать: CL | DM;

Почему через ShellExecute неполучается писать в файл ?   Найти похожие ветки 

 
Кен ©   (2003-11-06 03:34) [0]

Вот такое работает :
ShellExecute(0, nil, "7zip.exe", " la test.zip", nil, SW_SHOWNORMAL);

А такое нет :
ShellExecute(0, nil, "7zip.exe", " la test.zip >tmp.txt", nil, SW_SHOWNORMAL);

Почему ?
7zip - архиватор. Ему даётся команда считать список файлов в архиве и поместить их в tmp.txt .

Как тогда правильно сделать ?


 
Германн ©   (2003-11-06 03:55) [1]

Символ ">"(т.е. перенаправление вывода) - есть параметр ДОС системы. И может быть понят только ею. Отсюда следует, что коммандную строку "7zip.exe la test.zip > tmp.txt" можно выполнить только при вызове Command.com или Cmd.exe (в зависимости от типа Windows). И то если "7zip.exe" - сможет.


 
Кен ©   (2003-11-06 04:04) [2]


> Германн © (06.11.03 03:55) [1]

А как же тогда быть ?
Я придумал сделать bat-файл, записать в него команду и вызвать этот бат из Дельфи. Но это как-то полевому. Хочется нормальный путь.


 
Кен ©   (2003-11-06 04:08) [3]


> Германн © (06.11.03 03:55) [1]

command.com пишет: "Слишком много параметров".
ещё попробовал делать start, но тоже безрезультатно.
Как же мне вывод перехватить ?


 
Вася Пупкин ©   (2003-11-06 05:16) [4]

http://www.torry.ru/samples/samples/soft/redirectconsole.zip



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

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



Память: 0.45 MB
Время: 0.03 c
14-56853
adif
2003-10-27 14:19
2003.11.17
Защита файла от удаления


3-56460
Ryser
2003-10-25 17:08
2003.11.17
Транзакция


7-56924
Sergei
2003-09-08 12:19
2003.11.17
Печать


14-56843
VID
2003-10-28 13:00
2003.11.17
Админинг Windows 2000 (лок. машина)


1-56714
mc_duck
2003-11-07 09:36
2003.11.17
Адрес объекта.




   Наверх