Thema: IP Range

Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#9

Re: IP Range

  Alt 20. Mär 2006, 06:33
man kann es auch kompiliziert machen. Warum addiert ihr nicht gleich mit den Strings ? Ist doch bestimmt kein Aufwand mit IP in Strings zu rechnen (sarkasmus off)


Gruß Hagen

Delphi-Quellcode:
function ToIP(I1,I2,I3,I4: Integer): Cardinal;

  function Check(Value: Integer): Byte;
  begin
    if (Value >= 0) and (Value <= 255) then Result := Value
      else raise Exception.Create('ToIP: Values I1,I2,I3,I4 must be in Range 0 upto 255 each');
  end;

begin
  Result := Check(I1) shl 24 or Check(I2) shl 16 or Check(I3) shl 8 or Check(I4);
end;


function IPToStr(Value: Cardinal): String;
begin
  Result := Format('%d.%d.%d.%d', [Value shr 24, Value shr 16 and $FF, Value shr 8 and $FF, Value and $FF]);
end;


procedure Test;
var
  IP: Cardinal;
begin
  for IP := ToIP(192,168,2,100) to ToIP(192,168,5,100) do
    Writeln( IPToStr(IP) );
end;
  Mit Zitat antworten Zitat