Изменение каталога псевдонима во время выполнения приложения
Я делаю это все время. У меня есть INI-файл, который сообщает, где можно
найти таблицы и каталоги их расположения. Вот как я это делаю:
procedure CheckTable(var Table: TTable; var TName: string);
var
ChangePath: boolean;
Path: string;
ActiveState: Boolean;
begin
if (TName = '') then
TName := Table.TableName
else
with Table do
begin
ActiveState := Active;
Close;
Path := ExtractFilePath(TName);
ChangePath := HasAttr(DatabaseName, faDirectory) or
(CompareText(DatabaseName, Path) <> 0);
if (Length(Path) > 0) and ChangePath then
DatabaseName := Path;
if (CompareText(ExtractFileName(Tname), TableName) <> 0)
then
TableName := ExtractFileName(Tname);
Active := ActiveState;
end;
end;
|
|