Einzelnen Beitrag anzeigen

hirnstroem

Registriert seit: 21. Sep 2005
297 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Zugriffsverletzung ausfindig machen

  Alt 17. Nov 2006, 08:33
Den Ort der Entstehung habe ich gefunden, weshalb der Code Fehler ausspuckt bleibt mir hingegen noch immer ein Rätsel:

Delphi-Quellcode:
function HexStrToInt(str: string): integer;
var
  ColorInteger: integer;
  Einer, Zehner: Integer;
  ColorString: string;
  HexString: String;
begin
    Einer:=0;
    Zehner:=0;
    HexString:=str;
    if Length(HexString)=2 then
    begin
      try ColorString:=copy(HexString,length(HexString)-1,2); except end;

      if ColorString[1] in ['0'..'9'] then Zehner:= Ord(ColorString[1]) - 48
      else if ColorString[1] in ['A'..'F'] then Zehner:= Ord(ColorString[1]) - 55;

      if ColorString[2] in ['0'..'9'] then Einer:= Ord(ColorString[2]) - 48
      else if ColorString[2] in ['A'..'F'] then Einer:= Ord(ColorString[2]) - 55;
    end
    else // length =1
    begin
      try ColorString:=copy(HexString,length(HexString),1); except end;
      Zehner:=0;
      if ColorString[1] in ['0'..'9'] then Einer:= Ord(ColorString[1]) - 48 // hier tritt der Fehler auf
      else if ColorString[1] in ['A'..'F'] then Einer:= Ord(ColorString[1]) - 55;
    end;
    ColorInteger:=16*Zehner+Einer;
    Result:=ColorInteger;
end;
inde deus abest
  Mit Zitat antworten Zitat