![]() |
IP Adresse kontrollieren
Hi Leute,
Gibts in Delphi einen Algorithmus die eine IP auf ihre Güultigkeit kontrolliert. z.B.: 192.168.0.4 : gültig 300.123.0.7 : ungültig Kann es auch sein dass es in Delphi eine Komponente gibt, die die IP schon während der Eingabe prüft, so dass man nur gültige IPs eingeben kann? |
Re: IP Adresse kontrollieren
Sollte mit einem MaskEdit möglich sein.
|
Re: IP Adresse kontrollieren
Zitat:
|
Re: IP Adresse kontrollieren
Steht in der Hilfe.
|
Re: IP Adresse kontrollieren
Geeigneter ist wohl das besser ist wohl das
![]() |
Re: IP Adresse kontrollieren
mit dieser Funktion mache ich das immer:
Vielleicht ein wenig umständlich - aber es tut es. Kann man in OnExit es Editfeldes einfügen. Grüße Klaus
Delphi-Quellcode:
FUNCTION check_ip_address(VAR ipaddress:String):Boolean;
VAR ip_address_ok: Boolean; dummy_text:String[3]; dummy1_text,dummy_ip:String; FUNCTION check_segments:Boolean; VAR i,j:Byte; BEGIN j:=0; FOR i:=1 TO length(dummy_ip) DO IF dummy_ip[i] = '.' THEN inc(j); IF j <> 3 THEN check_segments := false ELSE check_segments := true; END; FUNCTION check_double_dots:Boolean; VAR i:Byte; BEGIN check_double_dots := false; FOR i:=1 to length(dummy_ip)-1 DO BEGIN IF (dummy_ip[i] = '.') AND (dummy_ip[i+1] = '.') THEN check_double_dots := true; END; END; begin ipaddress:=copy(ipaddress,1,pos(' ',ipaddress)-1); // check ip address dummy_ip:=ipaddress; ip_address_ok:=check_segments AND NOT check_double_dots AND (dummy_ip <> '0.0.0.0'); IF ip_address_ok THEN BEGIN dummy_ip:=''; dummy_text:= Copy(ipaddress,1,pos('.',ipaddress)-1); ip_address_ok:=false; IF (strToInt(dummy_text) >= 0) AND (strToInt(dummy_text) <=254) THEN BEGIN dummy_ip:=dummy_text+'.'; dummy1_text := copy(ipaddress,pos('.',ipaddress)+1,length(ipaddress)); dummy_text:= Copy(dummy1_text,1,pos('.',dummy1_text)-1); IF (strToInt(dummy_text) >= 0) AND (strToInt(dummy_text) <=254) THEN BEGIN dummy_ip:=dummy_ip+dummy_text+'.'; dummy1_text := copy(dummy1_text,pos('.',dummy1_text)+1,length(dummy1_text)); dummy_text:= Copy(dummy1_text,1,pos('.',dummy1_text)-1); IF (strToInt(dummy_text) >= 0) AND (strToInt(dummy_text) <=254) THEN BEGIN dummy_ip:=dummy_ip+dummy_text+'.'; dummy1_text := copy(dummy1_text,pos('.',dummy1_text)+1,length(dummy1_text)); IF pos('.',dummy1_text) = 0 THEN dummy_text:= dummy1_text ELSE dummy_text:= Copy(dummy1_text,1,pos('.',dummy1_text)-1); IF dummy_text <> '' THEN IF (strToInt(dummy_text) >= 0) AND (strToInt(dummy_text) <=254) THEN BEGIN ip_address_ok:=true; dummy_ip:=dummy_ip+dummy_text; ipaddress:=dummy_ip; END; END; END; END; END; IF NOT ip_address_ok THEN StatusBar1.Panels[1].Text:= 'The ip address "'+ipaddress+'" has not the correct format!' ELSE StatusBar1.Panels[1].Text:= ''; check_ip_address := ip_address_ok; END; |
Re: IP Adresse kontrollieren
in der
![]() |
Re: IP Adresse kontrollieren
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz