Не получается выполнить cmd с параметрами.

Форум для изучающих FPC и их учителей.

Модератор: Модераторы

Не получается выполнить cmd с параметрами.

Сообщение son » 07.04.2017 15:33:56

Доброго времени суток. Не работает данный простой код:

Код: Выделить всё

procedure TForm1.Button1Click(Sender: TObject);
var
AProcess: TProcess;
begin
AProcess:= TProcess.Create(nil);
AProcess.CommandLine:= 'cmd.exe';
AProcess.Parameters.Add('del D:\00_TEMP\*.txt');

AProcess.Execute;
AProcess.Free;
end;

Проверте пожалуйста, может это только на моей машине не работает?

son
новенький
 
Сообщения: 39
Зарегистрирован: 22.11.2011 11:50:58

Re: Не получается выполнить cmd с параметрами.

Сообщение Vadim » 07.04.2017 16:11:31

son
Дружище! Вы позабыли написать, как Вы определили, что Ваш код не работает. ;-)
Небольшой советик:
Некоторое время назад разработчики решили, что свойство "CommandLine" лучше не использовать. Команду лучше вводить в свойство "Executable", а с параметрами команды у Вас вроде всё правильно.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Не получается выполнить cmd с параметрами.

Сообщение son » 07.04.2017 16:15:03

Текcтовые файлы не удаляются. Реализовал пока через TSearchRec, но это видится велосипедом, когда можно командой сделать.
son
новенький
 
Сообщения: 39
Зарегистрирован: 22.11.2011 11:50:58

Re: Не получается выполнить cmd с параметрами.

Сообщение mig-31 » 07.04.2017 18:16:58

Код: Выделить всё
AProcess.Parameters.Add('del');
AProcess.Parameters.Add('D:\00_TEMP\*.txt');
mig-31
постоялец
 
Сообщения: 224
Зарегистрирован: 14.07.2011 13:46:48

Re: Не получается выполнить cmd с параметрами.

Сообщение pupsik » 07.04.2017 18:38:38

...но это видится велосипедом, когда можно командой сделать.
и зачем тогда вам лазарь? Можно батником сделать :mrgreen:
pupsik
энтузиаст
 
Сообщения: 1154
Зарегистрирован: 20.08.2014 16:20:13

Re: Не получается выполнить cmd с параметрами.

Сообщение tema » 11.04.2017 02:33:43

надо делать так:
Код: Выделить всё
  AProcess.Executable := 'del';
  AProcess.Parameters.Add('D:\00_TEMP\*.txt');

Всё будет работать
tema
постоялец
 
Сообщения: 375
Зарегистрирован: 24.03.2011 20:19:27


Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7

Рейтинг@Mail.ru