Witam
Napisałę procedurke do indeksowanie plików dbf.
Z jakis dziwnych przyczyn działa tylko wtedy gdy bazy są na dysku w katalogu głównym np C:\ jeżeli np będa w c:\tes\ to już nie indeksuje - nie widzi baz .
Co źle zrobiłem ?
procedure TDM.indeksuj(zzap,zzapbud:boolean);
var zpom:integer;
oTable : TADSTable;
oConnect: TADSConnection;
begin
oTable := TADSTable.Create( Application );
oConnect := TADSConnection.Create( Application );
oConnect.ConnectPath :='c:'; // tu ustawim ścieżke na takiej działa
oConnect.AdsServerTypes := [stADS_LOCAL];
oConnect.IsConnected := TRUE;
oTable.AdsConnection := oConnect;
oTable.AdsTableOptions.AdsCharType := OEM;
otable.exclusive:=true;
oTable.TableType := ttAdsNTX;
with dm.AdsConnection1 do for zpom:=0 to dataSetCount-1 do
DataSets[zpom].Active:=false;
{******************* dane.DBF **************************}
with otable do
begin
TableName:='dane';
IndexDefs.Clear;
IndexFiles.Clear;
oTable.Open;
AddIndex('dane','symbol_p+symbol_s+numer',[ixExpression]);
Close;
end;