Look this...function FindExeExist(qFileDirectory: string): Boolean; var SearchRec: TSearchRec; FileAttr: Integer; begin Result := False; FileAttr := faAnyFile; {if not(DirectoryExists(qFileDirectory) then begin Showmessage('Invalid File Directory'); Exit; end; } FindFirst(qFileDirectory + '\*.*', FileAttr, SearchRec); while FindNext(SearchRec) = 0 do begin if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then begin // 处理 SearchRec.Name,找文件后缀转换成大写 和EXE比较. 每一个文件都不会漏掉了.
//Find Result := True; end; end; end; 我没有在delphi 中调试,直接敲的,你看看行吗?方法比较笨.
function TForm1.GetDirectoryFile(Owner:TForm;Dir,Mask:string):string;; var File1:TFileListBox; i:integer; begin file1:=TFileListBox.Create(Owner); file1.Parent :=Owner; file1.Mask:=Mask; file1.Visible :=false; file1.Directory :=dir; if File1.Items.Count>=1 then result:='有Exe文件' else result:='没有exe文件'; file1.free; end;procedure TForm1.Button1OnClick(Sender as TObject) begin showmessage(GetDirectoryFile(self,'文件目录','*.exe')); end;
var
SearchRec: TSearchRec;
FileAttr: Integer;
begin
Result := False; FileAttr := faAnyFile; {if not(DirectoryExists(qFileDirectory) then
begin
Showmessage('Invalid File Directory');
Exit;
end;
}
FindFirst(qFileDirectory + '\*.*', FileAttr, SearchRec);
while FindNext(SearchRec) = 0 do
begin
if (SearchRec.Name <> '.') and (SearchRec.Name <> '..') then
begin
// 处理 SearchRec.Name,找文件后缀转换成大写 和EXE比较.
每一个文件都不会漏掉了.
//Find Result := True;
end;
end;
end;
我没有在delphi 中调试,直接敲的,你看看行吗?方法比较笨.
var File1:TFileListBox;
i:integer;
begin
file1:=TFileListBox.Create(Owner);
file1.Parent :=Owner;
file1.Mask:=Mask;
file1.Visible :=false;
file1.Directory :=dir;
if File1.Items.Count>=1 then
result:='有Exe文件'
else
result:='没有exe文件';
file1.free;
end;procedure TForm1.Button1OnClick(Sender as TObject)
begin
showmessage(GetDirectoryFile(self,'文件目录','*.exe'));
end;
如果不行,你就杀了我,只要你舍得
saoren的方法很灵巧,非Delphi不能为也,呵呵!