Bonsoir à tous,

J'ai un petit problème de connexion de socket, et a cause de ca je ne peux envoyer de message à mon logiciel, je vous explique tout d'abords mon Projet:

Mon Projet est de créer un boitier qui fait office de télécommande pour contrôler un logiciel vidéo.
Donc j'ai choisi d'utiliser un PIC 16F877 que j'intègrerai dans mon boitier quand j'aurais fini mon programme en C avec le protocole TCP car ce pic en programmable en C.
Mais problème commence sur le socket, j'ai déjà fais une recherche pour le créer ce qui est fait.

Maintenant je n'arrive pas me connecter au socket et à envoyer mon message qui est "halt" ce qui permet de stopper la Timeline du logiciel.

voici mon début de programme:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include "stdafx.h"
#include <stdio.h> 
#include <winsock2.h>
#pragma comment(lib, "ws2_32.lib")
 
 
 
int main()
{
	//Initialisation de la fonction WSAStartup,
	//qui permet d'utiliser le fichier Winsock.DLL par un processus 
    WSADATA WSAData;
	//"MAKEWORD(2,0)" = Indique la version de winsock que j'utilise qui est donc winsock2.
   int iResult = WSAStartup(MAKEWORD(2,0), &WSAData); 
   if (iResult != NO_ERROR) //Si iResult est différent de "NO_ERROR" continuer, sinon Afficher "Error at WSAStartup()"
   {printf("Error at WSAStartup()\n");}// Affiche "Error at WSAStartup()" au cas d'une erreur
   else 
   {printf("WSAStartup()is OK\n");
	} 
   /* ... */
    //WSACleanup(); //Nettoyage du WSA 
 
	///////////////////////////////Création du socket///////////////////////////////
 
	SOCKET socketClient; //Définition du socket. sock est une variable de type SOCKET.
	socketClient = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP); //SOCK_STREAM = Utilisation du protocole TCP en mode connecté.
		if (socketClient == INVALID_SOCKET) {
			 printf("Error at socket(): %ld\n", WSAGetLastError());}
		else 
			{printf("Socket is OK\n");
			 WSACleanup();
			}
 
	SOCKADDR_IN InfoServeur; //est une structure du SOCKADDR qui contient les informations techniques du socket
	InfoServeur.sin_addr.s_addr	= inet_addr("172.22.34.8");//Appartient a la struct SOCKADDR_IN et contient l'adresse ip du serveur. 
	InfoServeur.sin_family		= AF_INET; //AF_INET = Type de socket utilisé , pour internet ici, J'utilise l'IPV4.
	InfoServeur.sin_port		= htons(3040); //htons(3040) Numéro du Port utilisé par le logiciel.
	bind(socketClient, (SOCKADDR *)&InfoServeur, sizeof(InfoServeur)); // Cette fonction lie le socket au port et à l'adresse ip du serveur.
 
 
 
//----------------------
  // Connect to server.
  if ( connect( socketClient, (SOCKADDR*) &InfoServeur, sizeof(InfoServeur) ) == SOCKET_ERROR) {
    printf( "Failed to connect.\n" );}
  else{
  printf ("Connexion Etablie au serveur");
  WSACleanup();}
 
 
	send (socketClient,"halt",255,0);
 
    return 0;
}
Si vous pouvez m'aider je vous en remercie, et puis bien sur quand j'aurais fini mon programme je le ferais partager a tout le monde car l'aide est important dans ce domaine.

tchao