Moin erstmal und hier eine laaange Beschreibung des Probs!
Problem: Ich erstelle in einer
Unit A eine Komponente TStrings und möchte sie in einer
Unit B verwenden.
Das Problem egal ob ich TStrings oder eine TStringList übergebe, es kommt
[Fehler] verzeichnisHandlingUnit.pas(47): Inkompatible Typen: 'TStrings' und 'procedure, untyped pointer or untyped parameter'
(Zwischenfrage kann ich eine TStrings.create instantiieren oder muß ich über ein z.B. TStringList.create arbeiten, um auf eine Liste zugreifen zu können?)
Hintergrund ist der, daß ich eine Sektion aus einem INI-File auslesen will (wird als StringList zurückgegeben) und eben diese in einer anderen
Unit weiterverarbeiten will.
Hier mal der Code:
Empfangende
Unit:
Delphi-Quellcode:
procedure TsqdForm.createMusicTabs();
var
anzahlItems : integer;
tabListe : TStrings;
begin
// (leseAbschnittsKeys('musik'));
tabListe := TStringList.Create;
tabListe.AddStrings(verzeichnisHandlingUnit.leseAbschnittsKeys('musik'));
end;
Sendende
Unit:
Delphi-Quellcode:
function leseAbschnittsKeys(abschnittsName : string):TStrings;
var
namensListe : TStringList;
aktDir : String;
begin
aktDir := GetCurrentDir()+'\';
iniFile := TIniFile.Create( aktDir + 'sqdplayer.ini' );
try
namensListe := TStringList.Create;
namensListe.Clear;
leseAbschnittsKeys := iniFile.ReadSections(namensListe);
finally
namensListe.Clear;
end;
end;
(nur nebenbei: Der Abschnittsname
musik existiert und hat Daten)
Kann mir jmd. auf die Sprünge helfen??