Ich habe mal wieder ein seltsames Problem.
Mein Programm lädt eine Textdatei, welche einige MB groß ist. Die aufbereiteten Daten werden in einer VirtualStringTree-Komponente gespeichert.
Innerhalb der VM (VMWare, Windows 7 Home Premium 64 Bit) erzeugt funktioniert alles ohne Probleme. Außerhalb der VM (Windows 7 Home Premium 64 Bit) bleibt das Programm beim Laden
der Daten (genauer gesagt, nach etwa 4 MB geladenen Daten) einfach hängen.
Mittlerweile konnte ich auch herausfinden, welche Zeile(n) vermutlich das Problem darstelle(n):
Delphi-Quellcode:
procedure AddVSTStructure(aVST: TVirtualStringTree; aRecord: TTreeData);
var
Data: PTreeData;
Node: PVirtualNode;
begin
Node := aVST.AddChild(nil);
Data := aVST.GetNodeData(Node);
aVST.ValidateNode(Node, False);
Data^ := aRecord;
end;
AddVSTStructure(aNewVST, TreeData);
Nur zur Information: die Daten werden innerhalb eines Threads aufbereitet und der VST-Struktur hinzugefügt.
Ob das daran liegen kann, dass das Windows in der VM nicht geupdated wurde und das außerhalb schon?
Ich habe gerade auch herausgefunden, dass es ohne "ValidateNode" wahrscheinlich funktioniert. Aber was ist an ValidateNode innerhalb eines Threads falsch?
Ok, das war es doch nicht