Hallo himitsu,
ich wollte gerade Dein himXML ausprobieren unter Delphi 2006. Leider bekomme ich keine Daten aus meiner
XML-Datei ausgelesen. Könntest Du mir da vielleicht weiterhelfen. Das erste ist, wenn ich Deine Datei himXML.pas öffne, dann bekomme ich schonmal die Meldungen aus dem Anhang. Dann probiere ich es trotzdem mit folgenden Code die
XML-Datei zu öffnen und Werte auszulesen :
Delphi-Quellcode:
var
FormalXML : TXMLFile;
begin
FormalXML := TXMLFile.Create;
try
FormalXML.asXML := '"' + GetEnvVarValue('SystemRoot') + '\Performance\WinSAT\DataStore\2010-08-28 14.10.58.562 Formal.Assessment (Initial).WinSAT.xml"';
with FormalXML.Node['WinSAT'].Node['WinSPR'] do
begin
Label30b.Caption := Node['CpuScore'].Text;
Label112b.Caption := Node['MemoryScore'].Text;
Label113b.Caption := Node['GraphicsScore'].Text;
Label114b.Caption := Node['GamingScore'].Text;
Label115b.Caption := Node['DiskScore'].Text;
end;
finally
FormalXML.Free;
end;
end;
Jedesmal bekomme ich eine AccessViolation in der Zeile
with FormalXML.Node['WinSAT'].Node['WinSPR'] do
. Das ganze führe ich unter Windows 7 x64 aus.
Edit:
Wenn ich das ganze so ausprobiere :
Delphi-Quellcode:
var
FormalXML : TXMLFile;
begin
FormalXML := TXMLFile.Create;
try
FormalXML.LoadFromFile('"' + GetEnvVarValue('SystemRoot') + '\Performance\WinSAT\DataStore\2010-08-28 14.10.58.562 Formal.Assessment (Initial).WinSAT.xml"');
with FormalXML.Node['WinSAT'].Node['WinSPR'] do
begin
Label30b.Caption := Node['CpuScore'].Text;
Label112b.Caption := Node['MemoryScore'].Text;
Label113b.Caption := Node['GraphicsScore'].Text;
Label114b.Caption := Node['GamingScore'].Text;
Label115b.Caption := Node['DiskScore'].Text;
end;
finally
FormalXML.Free;
end;
end;
Bei dieser Variante wird noch der Pfad vom Arbeitsverzeichnis vor den übergebenen Pfad gesetzt. Somit funktioniert auch hier das Laden des
XML-Files nicht.