Перейти к содержанию

slav_z

Пользователи
  • Активность

    198
  • Зарегистрирован

  • Посещение

  • Победитель дней

    19

slav_z стал победителем дня 25 ноября 2020

slav_z имел наиболее популярный контент!

2 Подписчика

Информация о slav_z

  • Звание
    Продвинутый пользователь

Посетители профиля

6 450 просмотров профиля
  1. сделайте простейший проект в котором воспроизводится ошибка... и киньте сюда.. а то как в наперстки играем...
  2. ListBox1.Items.AddStrings(TDirectory.GetFiles('c:/','*'+Exp,TSearchOption.soAllDirectories)); но работать она будет не быстро.. ей надо всю структуру диска С обойти... лучше ее в отдельном потоке запускать...
  3. тогда понятно... эта функция только из определенного каталога файлы получает... ща попробую..
  4. смотрите причину у себя.. значение Exp указано? в корне диска С точно есть такие файлы? после нигде нет очистки ListBox?
  5. да... но именно эта строка не только получит все нужные файлы из указанной директории, но и добавит их в ListBox
  6. вот ваш код с ListBox... все работает без ошибок procedure TForm1.FormCreate(Sender: TObject); begin Exp:='.txt'; ListBox1.Items.AddStrings(TDirectory.GetFiles(TDirectory.GetCurrentDirectory,'*'+Exp)); end; procedure TForm1.Button1Click(Sender: TObject); var FileIndex, FileName : String; I : Integer; begin randomize; FileIndex := IntToStr(random(5000)); for I := 0 to ListBox1.Items.Count-1 do begin FileIndex := IntToStr(StrToInt(FileIndex) + 1); FileName := FileIndex + Exp; TFile.Copy(ListBox1.Items[I], FileName); end; //Timer2.Enabled := False; end; проверьте ВСЕ ваши файлы doc на наличие флага "только для чтения"... место на диске есть?... без вашего проекта сложно угадать причину...
  7. ага можете указать там свою директорию где лежат ваши doc файлы
  8. цикл по текстовым файлам из указанной директории для вас будет for S in TDirectory.GetFiles(TDirectory.GetCurrentDirectory,'*.doc') do
  9. без вашего проекта можно долго гадать... похожий код у меня работает без ошибок... procedure TForm1.Button6Click(Sender: TObject); var S: string; I: Integer; begin I:=random(5000); for S in TDirectory.GetFiles(TDirectory.GetCurrentDirectory,'*.txt') do begin Inc(I); TFile.Copy(S,I.ToString+'.txt',True); end; end;
  10. подозрение на таймер... (перенесите Timer2.Enabled := False; в начало метода, может он где то запускается повторно) подозрение на функцию random()... почему именно так сделано получение начального индекса для файлов?
×
×
  • Создать...