Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IP-Adresse > String -> Longword (https://www.delphipraxis.net/182426-ip-adresse-string-longword.html)

bernau 23. Okt 2014 10:52

IP-Adresse > String -> Longword
 
Ich habe eine ActiveX-Komponente importiert. Der ActiveX-Komponenten muss ich eine IP-Adresse zuweisen. Aber der Parameter ist vom Type LongWord

Delphi-Quellcode:
   
  property IPPort: LongWord dispid 12;
  property IPAddress: LongWord dispid 11;
Welche Funktion benötoge ich Gibt es eine fertige Finktion um den IP-Adress-String (Die IP-Adresse liegt mir nur als String vor) in ein LongWord zu wandeln? Sollte so aussehen.

Delphi-Quellcode:
  IPAddress := FunktionDieIchSuche('192.189.1.123');

Der schöne Günther 23. Okt 2014 10:55

AW: IP-Adresse > String -> Longword
 
Eine etwas zu einfache Definition für IPv4-Adresse ist (0-255).(0-255).(0-255).(0.255). Ein LongWord sind 4 Byte. Klingelts? :-)

bernau 23. Okt 2014 10:59

AW: IP-Adresse > String -> Longword
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1277126)
Eine etwas zu einfache Definition für IPv4-Adresse ist (0-255).(0-255).(0-255).(0.255). Ein LongWord sind 4 Byte. Klingelts? :-)

Habe mich wohl etwas dümmlich ausgedrückt. Die Definition ist mir schon klar und ich kann mir die Funktion selber schreiben. Ich ärgere mich aber immer, wenn ich eine Funktion selber schreibe, diese aber schon als Funktion vorhanden ist.

p80286 23. Okt 2014 11:03

AW: IP-Adresse > String -> Longword
 
Hier im Forum suchenTranslateStringToIPAddr

oops die scheint hier nicht mehr zu finden zu sein
mal schauen wo ich sie vergraben habe

Gruß
K-H

DeddyH 23. Okt 2014 11:09

AW: IP-Adresse > String -> Longword
 
Bei den JEDIs könnte etwas dabei sein, oder evtl. auch hiermit: http://www.torry.net/vcl/lan/networks/uIPv4.zip

Klaus01 23. Okt 2014 11:18

AW: IP-Adresse > String -> Longword
 
.. damit sollte es auch funktionieren:
Code:
inet_addr
The inet_addr function converts a string containing an (Ipv4) Internet Protocol dotted address into a proper address for the IN_ADDR structure.

unsigned long inet_addr(
  const char* cp
);
Die Unit Windsock ist dazu einzubinden.

Grüße
Klaus

Sir Rufo 23. Okt 2014 11:40

AW: IP-Adresse > String -> Longword
 
Zitat:

Zitat von bernau (Beitrag 1277127)
Zitat:

Zitat von Der schöne Günther (Beitrag 1277126)
Eine etwas zu einfache Definition für IPv4-Adresse ist (0-255).(0-255).(0-255).(0.255). Ein LongWord sind 4 Byte. Klingelts? :-)

Habe mich wohl etwas dümmlich ausgedrückt. Die Definition ist mir schon klar und ich kann mir die Funktion selber schreiben. Ich ärgere mich aber immer, wenn ich eine Funktion selber schreibe, diese aber schon als Funktion vorhanden ist.

Wo ist denn das Problem dabei?

Erstelle dir einfach ein paar Units nach Themen getrennt und implementiere dort deine Variante.
Stellst du jetzt fest, dass es eine eingebaute Variante gibt, dann baust du diese in der Unit ein. Deine Anwendung muss nicht geändert werden und für ältere Delphi-Versionen (wo es diese einebaute Funktion noch nicht gibt) kannst du einen Compiler-Switch setzen.

Darüber würde ich mir auf jeden Fall keinen Kopf machen :)

Der schöne Günther 23. Okt 2014 11:52

AW: IP-Adresse > String -> Longword
 
Schätzungsweise 1/3 meiner Fragen sind aber auch genau das: "Gibt es da irgendwo im RTL-Dschungel schon was oder nehme ich etwas selbstgestricktes?"

bernau 23. Okt 2014 12:29

AW: IP-Adresse > String -> Longword
 
@Klaus01: Jep. Das verwende ich erst mal.

@Sir Rufo: Ist nicht wirklich ein Problem. Aber wenn man es von vorne herein vermeiden kann, spricht ja nichts gegen eine kurze Frage. :idea:

@Der schöne Günther: Trotzdem danke! :thumb: Ein anderer kann es ja ggf. gebrauchen, wenn er diesen Thread liest. Ist also nicht umsonst ;-)

bernau 23. Okt 2014 12:32

AW: IP-Adresse > String -> Longword
 
Zitat:

Zitat von Der schöne Günther (Beitrag 1277149)
Gibt es da irgendwo im RTL-Dschungel schon was oder nehme ich etwas selbstgestricktes?

Vieleicht sollten wir daraus ein offizielles Kürzel a la "RTFM" machen. Also: "ROS" -> RTL oder Selbsgestrickt. :lol::lol::idea:


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz