noch eine winzige Erweiterung...
Delphi-Quellcode:
Memo1.Lines.Append('Typ: ' + VarType(V).ToString + ' ' + VarTypeAsText(V));
Memo1.Lines.Append('Val: ' + TVarData(V).VInt64.ToString + ' ' + TVarData(V).VUInt64.ToString);
Memo1.Lines.Append('Raw: ' + UIntPtr(TLargestVarData(TVarData(V).VAny^)._Reserved1).ToString
+ ' ' + UIntPtr(TLargestVarData(TVarData(V).VAny^)._Reserved2).ToString);
var Tmp: string;
for var i := 0 to 7{simplyunknown} do
Tmp := Tmp + PAnsiChar(TVarData(V).VUnknown)[i];
Memo1.Lines.Append(Tmp);
Musste ich etwas anpassen - Val funktioniert:
Delphi-Quellcode:
try Memo1.Lines.Append('
Typ: ' + VarType(V).ToString + '
' + VarTypeAsText(V));
except on E:
Exception do Memo1.Lines.Append('
Typ: '+E.
Message);
end;
try Memo1.Lines.Append('
Val: ' + IntToStr(TVarData(V).VUInt64));
except on E:
Exception do Memo1.Lines.Append('
Val: '+E.
Message);
end;
try Memo1.Lines.Append('
Raw: ' + UIntPtr(TLargestVarData(TVarData(V).VAny^)._Reserved1).ToString+ '
' + UIntPtr(TLargestVarData(TVarData(V).VAny^)._Reserved2).ToString);
except on E:
Exception do Memo1.Lines.Append('
Raw: '+E.
Message);
end;
Typ: Überlauf bei der Konvertierung einer Variante vom Typ (Decimal) in Typ (Integer)
Val: 7978126718202166279
Raw: Zugriffsverletzung bei Adresse 008168A4 in Modul 'Project2.exe'. Lesen von Adresse F37E3C07