Newsgroup: it.comp.programmare.win32
Titolo: conversione indirizzo IP

Qualcuno sa qual'è la funzione per convertire l'indirizzo IP dalla forma
000.000.000.000 (oppure 000.000.000) a quella binaria, so che si deve usare
'inet_aton', ma quando compilo sotto windows, il compilatore mi da questo
errore:
undefined reference to `inet_aton'.
Questi sono gli include nel codice:
#include <windows.h>
#include <winsock2.h>
e durante la compilazione linco la libreria ws2_32.
Grazie

'inet_aton'
   Windows Sockets 2 non la implementa.
-- 
S.L.

Chiedo scusa, ma come hai potuto notare ho ricevuto solo la tua risposta.
Tornando al problema, come si fa quindi sotto windows a convertire
l'indirizzo? Qui dentro 'sa.sin_addr' memorizzo direttamente l'indirizzo
nella forma decimale? Ancora grazie

 ha scritto nel messaggio
news:998lkvo89ll78fh51...@4ax.com...

questo mi ha fatto incazzare ... :-/

"Nuke" <man...@inwind.it_nospam> ha scritto nel messaggio
news:rwy2b.265353$lK4.8...@twister1.libero.it...

ma va a quel paese va' !!!! ti hanno risposto dopo un ora e dici pure che
come vedi hai ricevuto solo una risposta !!!
ma va a cagher che manco sai che e' usenet !!!
io sto aspettando da 7 giorni una risposta sul ng C++ e semmai sta settimana
ripoosto per farmi dare una rispoosta !!! non posto 20 messaggi in 5 minuti
e mi lamento pure che non ricevo rispooste entro 10 minuti !!!
ma ho !!! mica siamo sovvenzionati a star qui a fare la balia alla gente
come te !!!
e poi c'e' MSDN che e' cosi' facile da usare e da l'help su tutto il
PLATFORM SDK di windows !!! queste cose le trovi scritte la dentro in 5
minuti.
ora fammi sbollire l'icazzatura verso di te prima di rispondermi !!!
ciao

Non ho capito bene, non è che cercavi questa ?
The Windows Sockets 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 FAR * cp
);
Giacomo

questo mi ha fatto incazzare ... :-/
   Vabbe', usi inet_addr, che restituisce un intero senza segno a 32
bit in network byte order. Pero` il controllo sull'errore e` piu`
scarso, visto che in caso di errore nella stringa di input,
restituisce INADDR_NONE.
   In winsock2.h INADDR_NONE e` definito 0xffffffff, quindi viene
restituito anche se la stringa in input e` corretta ed e`
"255.255.255.255".
-- 
S.L.

 "255.255.255.255".
Ma a te ti serve proprio tutto !!!
Ma è tanto difficile ? siamo allevatori di API o programmatori ?
Tempo fa feci questo..
Numerone Converti ( char *str) {
 if ( sscanf ( str, "%d.%d.%d.%d", &a, &b, &c, &d) != 4)
  return -1;
 if ( a>255 || b>255 || c>255 || d>255)
  return -2;
 return ( (a << 24) + (b << 16) + (c << 8) + d);
}

Numerone Converti ( char *str) {
   Cosi` reinventi la ruota (e c'e` pure un bug).
-- 
S.L.

 (e c'e` pure un bug).
Nessun bug: non si compila proprio, ma è una via.
Bene, Aspetto la tua soluzione definitva che chiuderà il thread una volta
per tutte.
Giacomo

  (e c'e` pure un bug).
Nessun bug: non si compila proprio, ma č una via.
Giacomo

 Giacomo
Beh, siamo sotto i.c.p.win32, no? Allora WC_IPADDRESS con messaggi e macro
connesse.
Luca

 connesse.
Accipippola, non la conoscevo. Certo che tra questa e la scanf..

"Giacomo" <nob...@no.where> ha scritto nel messaggio
news:VtK2b.266704$Ny5.8...@twister2.libero.it...

da quello che ho visto su msdn e' solo una classe grafica ... se non usi la
gui non sarebbe per nulla utile ... sbaglio ?
ciao

 ciao
Esatto.
Luca