Информация о псевдонимах BDE
Written on . Posted in [Delphi] Базы данных. BDE
var MyAliasPath: string; const AliasName = 'MyAlias';
{**** Получаем из BDE путь MyAlias}
ParamsList := TStringList.Create;
try with Session do begin Session.GetAliasNames(ParamsList); Session.GetAliasParams(AliasName, ParamsList); MyAliasPath := Copy(ParamsList[0], 6, 50) + '\'; end; finally ParamsList.Free; end;
|
Как через конфигурацию IDAPI получить физический каталог расположения базы данных, зная ее псевдоним?
Обратите внимание на метод GetAliasParams класса TSession.
Возвращенная строка будет содержать искомый путь.
Я пользуюсь следующей функцией:
uses DbiProcs, DBiTypes;
function GetDataBaseDir(const Alias: string): string; (* Возвращает каталог расположения базы данных по заданному псевдониму (без обратного слеша) *) var sp: PChar; Res: pDBDesc; begin try New(Res); sp := StrAlloc(length(Alias) + 1); StrPCopy(sp, Alias); if DbiGetDatabaseDesc(sp, Res) = 0 then Result := StrPas(Res^.szPhyName) else Result := ''; finally StrDispose(sp); Dispose(Res); end; end;
|