I want to do someting like that:
var
ip,ip2: string;
begin
ip:= '127.0.0.1';
ip2:= ip+1;
end;
after this code executed ip2 should be 127.0.0.2
Question is: How can I increase an IP address like that?
You might try the following:
type
TIPAddress = array[0..3] of Byte;
function IncIPAddress(const IPAddress: TIPAddress;
Value: Integer = 1): TIPAddress;
begin
PInteger(@Result)^ := PInteger(@IPAddress)^ + Value;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
S: string;
IPAddress: TIPAddress;
IPAddress2: TIPAddress;
begin
IPAddress[3] := 127;
IPAddress[2] := 0;
IPAddress[1] := 0;
IPAddress[0] := 1;
S := Format('%d.%d.%d.%d', [IPAddress[3], IPAddress[2],
IPAddress[1], IPAddress[0]]);
ShowMessage(S);
IPAddress2 := IncIPAddress(IPAddress);
S := Format('%d.%d.%d.%d', [IPAddress2[3], IPAddress2[2],
IPAddress2[1], IPAddress2[0]]);
ShowMessage(S);
end;