Показать сообщение отдельно
  #5  
Старый 18.05.2011, 09:01
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от Assistant
RecordCount не всегда правильно отображает количество строк, особенно с BDE.
поясни! фильтр? не упакованый файл? решаемо...
да и зачем вообще какие-то механизмы доступа к данным применять? вот же:
Код:
function RecordCount(const DBFName: String): Integer;
var
  hfile: THandle;
  data: array [0..7] of Byte;
  dummy: Cardinal;
begin
  Result:=-1;
  hfile:=CreateFile(PChar(DBFName), GENERIC_READ, FILE_SHARE_READ, nil,
    OPEN_EXISTING, 0, 0);
  if hfile<>INVALID_HANDLE_VALUE then
  begin
    if ReadFile(hfile, data, Length(data), dummy, nil) then
      Result:=(data[4] shl 0) or (data[5] shl 8)
        or (data[6] shl 16) or (data[7] shl 24);
    CloseHandle(hfile);
  end; 
end;
__________________
Пишу программы за еду.
__________________
Ответить с цитированием