Jetzt muss ich nur noch wissen ob ANIM existiert. Sign ist nur ein Zahlenwert.
Ob du 'ANIM' jetzt als 4-stelligen
ANSI-String, oder als 4-Byte DWORD vorliegen hast, macht im Grunde keinen Unterschied. Am Einfachsten ist es, wenn du
anih.Sign
einfach mit dem korrekten Zahlenwert (0x4D494E41) vergleichst.
Das
ShowMessage(IntToStr(StrToInt('ANIM')));
wirft definitiv eine
Exception. Ich habe die Vermutung, dass er die Schleife gar nicht durchläuft und so an die Stelle gar nicht erst kommt.
Deshalb hatte ich ja gefragt, ob er mal diesen Testcode mit der MessageBox direkt an den Anfang der Funktion packen kann. Ich bin auch der Meinung, dass eine
Exception kommen müsste, aber anscheinend gibt
StrToInt
bei seiner Konfiguration einfach nur still und heimlich 0 zurück
Kann ich mir auch nicht erklären.
@Emil:
Kannst du den MessageBox Code mal noch in einem komplett leeren Projekt testen? Vielleicht hast du an irgendeiner Stelle davor eine Memory Corruption verursacht, die jetzt den Programmfluss in komischer Weise stört.