Показать сообщение отдельно
  #3  
Старый 19.02.2011, 23:47
MrDiG MrDiG вне форума
Начинающий
 
Регистрация: 05.10.2010
Сообщения: 112
Репутация: 1227
По умолчанию

Просто пока я буду ждать эти десять секунд в папке может появиться ещё десяток батников. Придётся вести список отработанных. Хочется чёго-то понадёжнее.

Допустим вот намутил кусочек кода:


Код:
procedure TForm15.Timer1Timer(Sender: TObject);
var
path:string; //путь к папке с батниками
bat:string; //переменная для названия батников
begin
path:=Edit1.Text;
ListBox1.Clear;
ListFileDir(path, ListBox1.Items);

if ListBox1.Items.Count > 0 then
  begin
  bat:=path+ListBox1.Items[0];
  ShellExecute(0,'open',PChar(bat),nil,PChar(path),SW_SHOW);

  //Вот тут вот - я должен убедиться что cmd.exe не запущен
  //после чего удалить файл.
  //Если удаляю во время работы батника - он отрабатывает неправильно
  //Заголовок окна C:\Windows\system32\cmd.exe
 
  DeleteFile(bat);
  end;


end;
Ответить с цитированием