Einzelnen Beitrag anzeigen

Papaschlumpf73

Registriert seit: 3. Mär 2014
Ort: Berlin
435 Beiträge
 
Delphi 12 Athens
 
#22

AW: Int64 spinnt oder ich. HILFE!!!!

  Alt 7. Nov 2024, 09:09
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
  Mit Zitat antworten Zitat