Thema: Delphi Header aus PNG laden

Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#10

AW: Header aus PNG laden

  Alt 23. Mär 2017, 02:53
Zitat:
Aber nur zur Sicherheit:
Der Code wird wirklich ausgeführt und du hast auch keinen Exception Handler um den Aufruf, der die Exception ggfls. abfangen könnte?
Ich habe mal MadExcept angeworfen und nein so wie du am bild sehen kann gibt der Compiler True zurück ohne wenn und aber
Das ist interessant Was gibt StrToInt('ANIM') denn für einen Wert zurück? Das ist jetzt mal spannend herauszufinden.
Er durchläuft das Array bis 8 und schaltet dann auf true.
Ausgeben tut er sonst nichts.
Was passiert denn, wenn du mal ganz am Anfang der Funktion testweise ein ShowMessage(IntToStr(StrToInt('ANIM'))) machst? Würde mich mal interessieren.

Aber wie gesagt es kann nicht richtig sein auch wenn das Ergebnis true ist.
So komme ich nicht an den Header.
Wenn der Header tatsächlich immer am Dateiende ist, kannst du ihn ganz einfach so auslesen und dir sowohl das Byte-Array, als auch die komische Schleife sparen:
Delphi-Quellcode:
FileStream := TFilestream.Create(wsFile ,fmopenread or fmShareDenyNone);
  try
    FileStream.Seek(-SizeOf(TAniHeader), soEnd);
    FileStream.Read(anih, SizeOf(anih));
  finally
    FileStream.Free;
  end;
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat