willixs
Messages postés1Date d'inscriptionlundi 11 mai 2009StatutMembreDernière intervention12 mai 2009
-
12 mai 2009 à 14:59
fregolo52
Messages postés1114Date d'inscriptionmercredi 15 juin 2011StatutMembreDernière intervention 6 mai 2021
-
12 mai 2009 à 17:49
Bonjour j'ai fait un socket client sur c++ builder et un serveur socket sur linux mais j'ai un probleme c'est que j'ai créé un tableau de caractères sur mon serveur que j'envoie à mon Client,cependant j'ai du mal à bien afficher les valeurs envoyées sur mon ihm Client .je veux que ca m'affiche les valeurs définies dans mon tableau.
CSocket.h
#ifndef CSOCKET_H_INCLUDED
#define CSOCKET_H_INCLUDED
//#include <stdio.h>
//#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>
#include
#include
#include <netinet/in.h>
#include "ConvStrInt.h"
//#include <stdlib.h>
const int MAXCONNECTIONS = 5 ;
class CSocket
{ public:
char valeur[60];
char *donnees;
CSocket();
~CSocket();
int nommer_socket();
int attendre_connexion();
int accepter_connexion();
//TRANSMISSION DE DONNEES
int recevoir();
int envoyer(char* );
//CLIENT INITIALISATION
int connexion();
private:
int test,idSockServ,idSockClient;
//sockaddr_un m_addr;
//int server_sockfd, client_sockfd;
int server_len, client_len;
struct sockaddr_in server_address , client_address;
};
#endif // CSOCKET_H_INCLUDED
CSocket.cpp #include "./CSocket.h"
CSocket::CSocket()
{ cout << "Instanciation de la classe CSocket" << endl;
idSockServ=socket( AF_INET, SOCK_STREAM,0);
if(idSockServ==-1)
{ cout<<"\n Création du socket : IMPOSSIBLE "<<endl;
perror("Erreur Création du socket");
exit(-1);
}
else
cout<<"\n Création du socket : OK " <<"IDENTIFIANT : " << idSockServ << endl;
}
//---------Affichage de la date à l'ouverture de la fenêtre------------------------------------------------------------------
Horloge->Caption=DateTimeToStr(Now());
}
//--Quand on clique sur le bouton configurer ,cela affiche la page de configuration -------------------------------------------------------------------
void __fastcall TForm1::ClientSocket1Connect(TObject *Sender,
TCustomWinSocket *Socket)
{
Ed_Etat->Text="La communication est établie avec la carte FOX";
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ClientSocket1Error(TObject *Sender,
TCustomWinSocket *Socket, TErrorEvent ErrorEvent, int &ErrorCode)
{
ShowMessage("Erreur, Verifier que la carte FOX est à l'écoute du client");
}
//------Reception Tableau envoyé par serveur---------------------------------------------------------------------