Информация о псевдонимах BDE

{codecitation class=»brush: pascal; gutter: false;» width=»600px»}

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;

{/codecitation}

Добавить комментарий