Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro
Con Midnight, Blizzard tenta il colpaccio: il player housing sbarca finalmente su Azeroth insieme a una Quel'Thalas ricostruita da zero. Tra il dramma della famiglia Ventolesto e il nuovo Prey System, ecco com'è la nuova espansione di World of Warcraft
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato
Nuova frontiera per i robot tagliaerba, con Ecovacs GOAT O1200 LiDAR Pro che riconosce l'ambiente in maniera perfetta, grazie a due sensori LiDAR, e dopo la falciatura può anche rifinire il bordo con il tagliabordi a filo integrato
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere?
Equilibrio e potenza definiscono il Samsung Galaxy S26+, un flagship che sfida la variante Ultra e la fascia alta del mercato con il primo processore mobile a 2nm. Pur mantenendo l'hardware fotografico precedente, lo smartphone brilla per un display QHD+ da 6,7 pollici d'eccellenza, privo però del trattamento antiriflesso dell'Ultra, e per prestazioni molto elevate. Completano il quadro la ricarica wireless a 20W e, soprattutto, un supporto software settennale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-10-2011, 13:26   #1
Sangio
Member
 
Iscritto dal: Sep 2005
Messaggi: 218
[C] Winsock errore in fase di binding

ciao a tutti, scrivo perchè ho un problema molto antipatico, ho studiato in preparazione ad un esame universitario cosa sono le socket e come funzionano, con alcuni esempi di loro implementazioni purtroppo (per me) in ambiene UNIX, ho cercato qualche informazione per cominciare a realizzarne una io e ho cominciato la stesura di una socket server che faccia un local echo service.
(client logga, scrive ciao e gli ritorna ciao),
purtroppo non riesce a bindare la socket ad una porta... vi riporto il codice, sarei contentissimo se mi aiutaste a risolvere!
(SO Windows XP , localhost mi da qualche problema, non riesco a fare da cmd telnet localhost oppure telnet 127.0.0.1 ma non credo sia quello).

#include <stdio.h>
#include <stdlib.h>
#include <winsock.h>
int main(int argc, char *argv[])
{

WSADATA wsaData;
if (WSAStartup(MAKEWORD(1,1), &wsaData) !=0){
printf("Winsock startup fallito\n");
exit(1);
}


int sock,nsock;
char buf[10];
struct sockaddr_in server,client;
server.sin_family=PF_INET;
server.sin_addr.s_addr = INADDR_ANY;
server.sin_port = htons(atoi(argv[1]));
if(sock = socket(PF_INET,SOCK_STREAM,0) ==-1)
{
printf("Error while creating the socket!\n");
system("PAUSE");
return 1;
}
printf("Ok, socket creata con id %d,\n",sock);
int sockaddr_len = sizeof(INADDR_ANY);
if(bind (sock, (struct sockaddr*)&server,sockaddr_len)==-1)
{
printf("Error while binding!\n");
system("PAUSE");
return 1;
}
printf("Ok, socket bindata alla porta %d dell' indirizzo %d\n",ntohs(server.sin_port), ntohs(server.sin_addr.s_addr));
if(listen(sock,2)==-1)
{
printf("Error while listening!\n");
system("PAUSE");
return 1;
}
while(1){
/*printf("Nuova sock, esito: %d\n",nsock=accept(sock, (struct sockaddr *)&client, &sockaddr_len)); /*continua a ripetere la frase perchè non fa
correttamente bind nè listen, quindi non riesce ad andare in recv */
recv(nsock,buf,1024,0);
send(nsock,buf,1024,0);
close(nsock);
}
system("PAUSE");
return 0;
}


usando netstat non rilevo alcuna attivita sulla porta che scelgo mentre richiamo il programma, e quest ultimo non procede oltre la fase di binding (ritorna solo "Error while binding.").

GRAZIE!
Sangio è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2011, 13:45   #2
Sangio
Member
 
Iscritto dal: Sep 2005
Messaggi: 218
con WSAGetLastError ho scoeprto che si tratta dell' errore 10038 :
Socket Error 10038 - The Descriptor is not a socket
any help? ;-)
Sangio è offline   Rispondi citando il messaggio o parte di esso
Old 12-10-2011, 17:36   #3
Sangio
Member
 
Iscritto dal: Sep 2005
Messaggi: 218
risolto ;-) la bind nell' if non andava molto d'accordo..
Sangio è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Recensione Samsung Galaxy S26+: sfida l'Ultra, ma ha senso di esistere? Recensione Samsung Galaxy S26+: sfida l'Ultra, m...
Zeekr X e 7X provate: prezzi, autonomia fino a 615 km e ricarica in 13 minuti Zeekr X e 7X provate: prezzi, autonomia fino a 6...
Marathon: arriva il Fortnite hardcore Marathon: arriva il Fortnite hardcore
Gemini, Google investe 30 milioni per la...
Roborock Qrevo Edge S5A: 17.000 Pa, acqu...
Resa pubblica la foto della ''Terra che ...
Il robot che ha piegato 200 scatole di f...
SteelSeries Aerox 3 Wireless Gen 2: nuov...
"Quasi sociopatico": Sam Altma...
Star Wars Eclipse in difficoltà: ...
Gestione del team e romance organiche: l...
Intel lancia Core Ultra X9 378H: hardwar...
Tomodachi Life non supporterà Handheld M...
Identificati i boss di REvil e GandCrab:...
Google Chrome 148 introduce il caricamen...
Tomb Raider: Legacy of Atlantis, l'uscit...
Casa Bianca: proposto un budget ridotto ...
Telecamere Arlo in offerta su Amazon: Es...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 15:42.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v