any idea?without any code and exact error message ?, no idea.
==============
var ListTableName: Tstrings; begin ListTableName:= TStrings.Create; if not Cache.GetTableNames( ListTableName ) then ShowMessage( Cache.Error );
And display error:
==============
EAbstractError
Abstract method called
==============
... Warning: Constructing a class "TStrings" with abstract method "Get"
... Warning: Constructing a class "TStrings" with abstract method "GetCount"
... Warning: Constructing a class "TStrings" with abstract method "Clear"
... Warning: Constructing a class "TStrings" with abstract method "Delete"
... Warning: Constructing a class "TStrings" with abstract method "Insert"
TStrings implements an abstract class to manage an array of strings. It introduces methods to set and retrieve strings in the array, searching for a particular string, concatenating the strings and so on. It also allows an arbitrary object to be associated with each string.
It also introduces methods to manage a series of name=value settings, as found in many configuration files.
An instance of TStrings is never created directly, instead a descendant class such as TStringList should be created. This is because TStrings is an abstract class which does not implement all methods; TStrings also doesn't store any strings, this is the functionality introduced in descendants such as TStringList.
var ListTableName: Tstrings;
begin
ListTableName:= TStringList.Create;
if not Cache.GetTableNames( ListTableName ) then
ShowMessage( Cache.Error );
end;