Moin Christian,
Zitat von
Yheeky:
... War das gute Nacht auf den Code bezogen? ...
natürlich nicht - ich wollte mich lediglich Richtung Bett abmelden.
Du machst da einige nicht so schöne Sachen, aber richtig mies wird es, wenn du einen Zeiger auf einen dynamisch angeforderten Speicherplatz in deine Liste aufnimmst, den Speicher aber sofort wieder freigibst. Das geht auch besser:
Delphi-Quellcode:
const
RECORDNAME = 'computerdaten';
procedure ExtractValues(doc: IDOMDocument; recNo: Cardinal; s: TStrings);
var
dlRecs: IDOMNodeList;
dnRec: IDOMNode;
dnFld: IDOMNodeEx;
begin
with doc.documentElement as IDOMNodeSelect do
begin
dlRecs := selectNodes(RECORDNAME);
dnRec := dlRecs.item[Pred(recNo)];
s.Clear;
dnFld := dnRec.firstChild as IDOMNodeEx;
while Assigned(dnFld) do
begin
s.Values[dnFld.nodeName] := dnFld.Text;
dnFld := dnFld.nextSibling as IDOMNodeEx;
end;
end;
end;
Freundliche Grüße