Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

MD5-Hash wirft Integer-Überlauf Exception (EIntOverflow)

  Alt 23. Jan 2008, 09:41
Guten Morgen erst mal,

ich sitze zurzeit an einem sehr komischen Problem: Und zwar handelt es sich darum, dass ich über die Unit, welche ich in den Anhang gesteckt habe, einen MD5-Hash ausgeben lassen will. Bisher, d.h. so circa 2 Monate lang ging es auch ohne Problem, nur seit gestern macht die Unit zicken und wirft mit jedes Mal, wenn ich die Anwendung ausführe eine EIntOverflow-Exception. Ich weiß nicht mehr weiter... Vor allem, weil es bisher wunderbar funktioniert hat.

In Zeile 111 erscheint dann der folgende Fehler:
Zitat:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt s.m.i.l.e.exe ist eine Exception der Klasse Exception mit der Meldung 'Benutzer existiert nicht' aufgetreten.
---------------------------
Anhalten Fortsetzen Hilfe
---------------------------
hier die Methode, in der der Fehler auftritt
Delphi-Quellcode:
{Z:109} procedure FF(var a: DWORD; b, c, d, x: DWORD; s: BYTE; ac: DWORD);
{Z:110} begin
{Z:111}    inc(a, F(b, c, d) + x + ac); // <<< hier tritt der Fehler auf...
{Z:112}    rot(a, s);
{Z:113}    inc(a, b);
{Z:114} end;
// Die Werte:
// a = 1732584193
// b = 4023233417
// c = 2562383102
// d = 271733878
// x = 128
// s = 7
// ac = 3614090360
Noch ein paar Informationen:
- wir sind eine Gruppe von Programmieren, d.h. ich kann nicht genau sagen wer, was, wann, wie geändert hat!
- das Projekt umfasst doch mehrere tausend Zeilen
- wir arbeiten mit der BDS 2006 (ohne Updates, soweit ich weiß)
- ich habe die Unit aus dem Internet geladen und daran nicht geändert!
- Ich habe auch schon andere Units getestet, mit dem selben Fehler!

Ich hoffe Ihr könnt mir hierbei weiterhelfen. Ich bin echt am verzweifeln

Mit freundlichen Grüßen
der Hai

[edit] Schreibfehler gefunden und für schlecht empfunden [/edit]
Angehängte Dateien
Dateityp: pas md5_829.pas (11,9 KB, 9x aufgerufen)
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat