Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Как узнать - установлена ли BDE

Следующая функция получает структуру SysVersion и записывает результаты в stringlist.


uses dbierrs, DBTables;

function fDbiGetSysVersion(SysVerList: TStringList): SYSVersion;
var
  Month, Day, iHour, iMin, iSec: Word;
  Year: SmallInt;
begin
  Check(DbiGetSysVersion(Result));
  if (SysVerList <> nil) then
  begin
    with SysVerList do
    begin
      Clear;
      Add(Format('ENGINE VERSION=%d', [Result.iVersion]));
      Add(Format('INTERFACE LEVEL=%d', [Result.iIntfLevel]));
      Check(DbiDateDecode(Result.dateVer, Month, Day, Year));
      Add(Format('VERSION DATE=%s', [DateToStr(EncodeDate
      (Year, Month, Day))]));
      Check(DbiTimeDecode(Result.timeVer, iHour, iMin, iSec));
      Add(Format('VERSION TIME=%s', [TimeToStr(EncodeTime
      (iHour, iMin, iSec div 1000, iSec div 100))]));
    end;
  end;
end;

Вызов этой функции выглядит следующим образом:


var
  hStrList: TStringList;
  Ver: SYSVersion;
begin
  hStrList:= TStringList.Create;
  try
    Ver := fDbiGetSysVersion(hStrList);
  except
    ShowMessage('BDE not installed !');
  end;
  ShowMessage(IntToStr(Ver.iVersion));
  Memo1.Lines.Assign(hStrList);
  hStrList.Destroy;
end;

Возможные резултаты (отображаемые в memo-поле):


ENGINE VERSION=500 
INTERFACE LEVEL=500 
VERSION DATE=09.06.98 
VERSION TIME=17:06:13 

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay