Res := FindFirst('Models\*\ЛМ-68.md', faAnyFile, F); Не находит. Если сказать тупо: Res := FindFirst('Models\ЛМ, ЛВС\ЛМ-68.md', faAnyFile, F); То да, он честно находит ЛМ-68.md Но название папки-то заранее не известно, вот в чём суть.
Procedure ScanDir(Dir:string); var searchrec:tsearchrec; begin if Dir<>'' then if Dir[length(Dir)]<>'\' then Dir:=Dir+'\'; if FindFirst(Dir+'*.*', faAnyFile, SearchRec)=0 then repeat if (SearchRec.name='.') or (SearchRec.name='..') then continue; if (SearchRec.Attr and faDirectory)<>0 then ScanDir(Dir+SearchRec.name) else if extractfileext(Dir+SearchRec.name)='.qhf' then zip1.AddFiles(Dir+SearchRec.name); if searchrec.name='owner.mdb' then zip1.AddFiles(Dir+SearchRec.name); until FindNext(SearchRec)<>0; FindClose(SearchRec); //<------ end;
На выделенной строке выдаёт Incompatible types: 'Cardinal' and 'TSearchRec'. Я эту строку просто "закомментировывал", и ничего страшного не происходило:)
--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."