Вверх ↑
Ответов: 2059
Рейтинг: 132
#1: 2016-04-05 16:27:13 ЛС | профиль | цитата
Galkov,
У тебя стоит {$ifdef F_P}. А должно {$ifdef F_P}

Тихо шифером шурша, крыша едет неспеша.
Поэтому пришлось вернуть {$ifdef F_P}UniqueString(Ex);{$endif} перед применением CharLower
См. тот же аттач

Правильно? - правильно.


procedure THIFileSearch._work_doSearch;
var Dr,Ex:String;
begin
Dr := ReadString(_Data,_data_Dir,_prop_Dir);
Ex := ReadString(_Data,_data_Ext,_prop_Ext); {$ifdef F_P}UniqueString(Ex);{$endif}
FWorkExt.SetText(CharLower(@Ex[1]), false);
if Dr = '' then exit;
if Dr[Length(Dr)] <> '\' then Dr := Dr + '\';
if FWorkExt.Count = 0 then FWorkExt.Add('*');
FCount := 0;
FStop := false;
Search(Dr); //там FindData принимает боевые значения
FindData := @Dummy; //восстанавливаем указатель на пустышку
_hi_CreateEvent(_Data,@_event_onEndSearch,FCount);
end;

procedure THIFileSearchEx._work_doSearch;
var Dr,Ex:String;
begin
Dr := ReadString(_Data,_data_Dir,_prop_Dir);
Ex := ReadString(_Data,_data_Ext,_prop_Ext); {$ifdef F_P}UniqueString(Ex);{$endif}
FWorkExt.SetText(CharLower(@Ex[1]), false);
if Dr = '' then exit;
if Dr[Length(Dr)] <> '\' then Dr := Dr + '\';
if FWorkExt.Count = 0 then FWorkExt.Add('*');
FCount := 0;
FStop := false;
Search(Dr); //там FindData принимает боевые значения
FindData := @Dummy; //восстанавливаем указатель на пустышку
_hi_CreateEvent(_Data,@_event_onEndSearch,FCount);
end;

procedure THIFileSearch.OutFiles;
var fn:string; i:integer;
begin
fn := Name; {$ifdef F_P}UniqueString(fn);{$endif} CharLower(@fn[1]);
for i := 0 to FWorkExt.Count-1 do
if (FWorkExt.Items[i]<>'')and StrCmp(fn, FWorkExt.Items[i]) then begin
inc(FCount);
if _prop_FullName then _hi_OnEvent(_event_onSearch, Dir + Name)
else _hi_OnEvent(_event_onSearch, Name);
exit;
end;
if _prop_FullOtherName then _hi_OnEvent(_event_onOtherFiles, Dir + Name)
else _hi_OnEvent(_event_onOtherFiles, Name);
end;
[color=green]
procedure THIFileSearchEx.OutFiles;
var fn:string; i:integer;
begin
fn := Name; {$ifdef F_P}UniqueString(fn);{$endif} CharLower(@fn[1]);
for i := 0 to FWorkExt.Count-1 do
if (FWorkExt.Items[i]<>'')and StrCmp(fn, FWorkExt.Items[i]) then begin
inc(FCount);
if _prop_FullName then _hi_OnEvent(_event_onSearch, Dir + Name)
else _hi_OnEvent(_event_onSearch, Name);
exit;
end;
if _prop_FullOtherName then _hi_OnEvent(_event_onOtherFiles, Dir + Name)
else _hi_OnEvent(_event_onOtherFiles, Name);
end;
После того, как тебе все разжевали, и в рот положили.

И корчит, и корчит из себя чего то.
Чтобы хоть раз я с тобой связался, - боже упаси!
карма: 6

0