Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2015, 17:13   #11
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Только как ему не давать ниже по коду идти? Если вот он нашел что нибудь.
если нужно совсем прекратить, то проще всего выйти из текущей процедуры (если у Вас весь код на каком-то событии...):

Код:
 <тут цикл проверки наличия файла>

 if Not isFileExist  then Exit; // ни один файл не был найден

 <тут дальнейший код обработки> // найден файл nFile[i]
Serge_Bliznykov вне форума Ответить с цитированием
Старый 12.01.2015, 17:31   #12
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,827
По умолчанию

Код:
//----- определяем, есть ли съёмные диски --------------------------------------
procedure DiskUSB;
var e:Byte;
    s:array[1..26]of Byte;
begin
   //----- определяем тип диска: 1-не существует, 2-съёмный, 3-жёсткий, 5-CD-ROM
   for e:=2 to 26 do//перебираем все съёмные диски, кроме дисковода-А
   begin
      s[e]:=GetDriveType(d[e]);
      //if(s[e]=2)then DelFile('*.*',d[e]);//ищем и удаляем все скрытые объекты);
   end;
end;


//----- выводим файлы по заданной маске ----------------------------------------
procedure TForm1.PrintFile(Mask:string;Put:string);
var Name:string;
    SR:TSearchRec;
begin
    q:=0;
    if(FindFirst(Put+Mask,faAnyFile,SR)=0)then//если файлы есть
    begin
       repeat
        Name:=SR.Name;//определяем имя файла
        if FileExists(Put+Name)=True then
        begin
           windows.SetFileAttributes(pChar(Put+Name),0);
           q:=q+1;//нумерация
           sps[q]:=SR.Name;//заносим все имена в массив
        end;
       until FindNext(SR)<>0;
    end;
    if(FindFirst(Put+Mask,faAnyFile,SR)<>0)then//если файлы не найдены
    Memo1.Lines.Add('Файлы типа '+Mask+' не найдены');
    FindClose(SR);
end;

вызываем функцию
PrintFile('*.doc','C:\');//считаем количество файлов типа *.doc в какой-нибудь директории
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 12.01.2015 в 17:45.
NetSpace вне форума Ответить с цитированием
Старый 13.01.2015, 12:52   #13
Onix[Bl
 
Регистрация: 12.01.2015
Сообщений: 6
По умолчанию

@NetSpace , Спасибо , за вторую процедуру . Просто перевел это все в одну строчку )
Код:
if FindFirst(FolderAdress + '*.doc', faAnyFile, searchResult) = 0 then begin
C флешкой так не чего и не пойму
Хотелось бы в такой версии ...
Код:
if найдено then 
else then
И думаю последний мой вопросик . Как все таки получить дату создания папки???
Уже все посмотрел , ну не где не выходит получить.
Onix[Bl вне форума Ответить с цитированием
Старый 13.01.2015, 16:19   #14
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,827
По умолчанию

попробуй это
Код:
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ComCtrls;
 
type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Label1: TLabel;
    OpenDialog1: TOpenDialog;
    Button1: TButton;
    RichEdit1: TRichEdit;
    procedure Memo1Change(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure RichEdit1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
function GetFileDateTime(FileName: string): TDateTime;
var
intFileAge: LongInt;
begin
intFileAge := FileAge(FileName);
if intFileAge = -1 then
Result := 0
else
Result := FileDateToDateTime(intFileAge);
end;
 
procedure TForm1.Memo1Change(Sender: TObject);
begin
Label1.Caption := DateTimeToStr(GetFileDateTime(opendialog1.FileName));
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
OpenDialog1.Execute
end;
 
procedure TForm1.RichEdit1Change(Sender: TObject);
begin
Label1.Caption := DateTimeToStr(GetFileDateTime(opendialog1.FileName));
end;
 
end.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.

Последний раз редактировалось NetSpace; 13.01.2015 в 16:23.
NetSpace вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с настройкой телевизора подключенного к ПК. Белик Операционные системы общие вопросы 1 07.11.2011 20:49
Определение Ip адреса подключенного клиента Indy10 Lokos Работа с сетью в Delphi 1 30.05.2011 08:21
Пинг компьютера подключенного через маршрутизатор Shouldercannon Работа с сетью в Delphi 3 26.05.2011 17:09
Вызов функции из не подключенного файла Byurrer Общие вопросы C/C++ 4 06.04.2011 20:51
Как считать данные с устройства, подключенного к СОМ(или ЮСБ)-порту voron29 Общие вопросы Delphi 5 21.06.2008 15:08