![]() |
IP-Adresse von String nach Integer wandeln
Hallole miteinand',
da hab ich jetzt mal ein umgedrehtes Problem. Tausende von Beiträgen erzählen, wie man aus einem Integer einen IP-String bekommt. Ich brauch das jetzt aber andersherum. Also meine Frage: Weiss jemand, wie man eine IP Adresse, die als String ('192.168.0.1') vorliegt in ein DWord bekommt? Gruß Frank :drunken: |
Re: IP-Adresse von String nach Integer wandeln
|
Re: IP-Adresse von String nach Integer wandeln
Hallo,
diesen Beitrag hab ich bereits gesichtet. Doch da wird immer nur von Int > Str gewandelt. Ich brauchs umgedreht! |
Re: IP-Adresse von String nach Integer wandeln
Unterteil den String an den Punkten in 4 Strings:
![]() diese Strings wandelst du mit StrToInt um undfertig. Mfg Tobi |
Re: IP-Adresse von String nach Integer wandeln
Mh.. wenn ich das richtig verstehe, willst Du aus einem IP-String einen Word-Wert machen. Das ist zwar möglich, indem Du die Punkte entfernst und dann einfach in Word umwandelst, hat aber relativ wenig Sinn. Da eine IP aus 4 Byte-Werten besteht, würdest Du im Nachhinein dieses Word-Wert nicht mehr eindeutig in einen String wert umwandeln können. Warum speicherst Du nicht die IP in einem Byte-Array?
|
Re: IP-Adresse von String nach Integer wandeln
Zitat:
Zitat:
marabu |
Re: IP-Adresse von String nach Integer wandeln
Sorry Marabu,
ich hatte die Funktion von inet_addr anders in Erinnerung. Aber Du hast recht, das Teil macht was ich brauche. Danke an alle für die schnelle Hilfe! Gruß Frank |
AW: IP-Adresse von String nach Integer wandeln
Ich habe jetzt auch das Problem. Allerdings bräuchte ich die IP-Adresse in vier Integers für die Nachricht IPM_SETADDRESS und das Makro MAKEIPADDRESS.
Hat da jemand eine Idee ohne Explode zu nutzen? Explode kommt mir dafür etwas übertrieben vor. |
AW: IP-Adresse von String nach Integer wandeln
Mit einer Stringliste
Delphi-Quellcode:
var
sl: TStrings; ... begin sl := TStringList.Create; sl.Delimiter = '.'; block1 := StrToIntDef(sl[0], 0); ... |
AW: IP-Adresse von String nach Integer wandeln
*patsch*
Man merk, das sich lange nicht mehr programmiert habe. ;) Aber irgendwie scheint das nicht zu funktionieren.
Delphi-Quellcode:
Da bekomme ich bei b1 ein "Listenindex überschreitet das Maximum". Der Ip-String ist aber korrekt: "192.168.2.102".
procedure IpStrToBytes(IPStr: string; var b0: Byte; var b1: Byte; var b2: Byte; var b3: Byte);
var sl: TStringList; begin sl := TStringList.Create; try sl.Text := IpStr; sl.Delimiter := '.'; b0 := StrToIntDef(sl[0], 0); b1 := StrToIntDef(sl[1], 0); b2 := StrToIntDef(sl[2], 0); b3 := StrToIntDef(sl[3], 0); finally sl.Free; end; end; Was mache ich da noch falsch? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:22 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