IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] Probl�me Socket + Connexion SQL


Sujet :

MFC

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Par d�faut [MFC] Probl�me Socket + Connexion SQL
    Bonjour � tous,

    Voil� je d�veloppe sur VC++ 6.0 en MFC.
    J'utilise l'API mysql++.

    Mon programme � l'appui sur un bouton utilise une m�thode qui cr�e une Socket Serveur qui se met � l'�coute d'un poste distant (appel� Superviseur). Lorsque le message est re�u la m�thode envoie comme r�sultat une cha�ne DataPacket qui est utilis� dans une autre m�thode pour r�cup�rer un "cycle" (un ensemble de valeurs) gr�ce � des requ�tes SQL :

    SocketServeur :
    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
     
    CString C_Serveur::ServerConnection(int iListenPort)
    {
    	//fonction serveur
    	SocketObject	ServerSocketObject ;
    	SocketObject	ClientSocketObject ;
    	char			DataPacket[128] ;			// Paquet de données à recevoir
    	int				iBytesReceived ;		    // # d'octets reçus
     
    	// tentative de lancement du serveur
    	if (ServerSocketObject.Bind(iListenPort))
    	{
     
    		AfxMessageBox("Tentative d'écoute sur le port");
     
    	   	// Ecoute sur le port
    		ServerSocketObject.Listen();
     
    		// Acceptation de connexion
    		ServerSocketObject.Accept(ClientSocketObject);
     
    		// Reception de données
    		iBytesReceived = ClientSocketObject.Recv(DataPacket, 128, 0);
     
    //		char* nom_operateur ;
    //		strcpy (nom_operateur, nom_BDD) ;
     
    //		iBytesReceived = ClientSocketObject.Send(nom_operateur, 128, 0);
    	}
       	else 
    	{
    		AfxMessageBox("<Serveur> : Connexion impossible") ;
    	}
     
    	CString reponse;
    	ServerSocketObject.Disconnect();
    	ClientSocketObject.Disconnect();
     
    	reponse.Format("%s", DataPacket);
     
    	return reponse ;
    }
    la fonction recup_cycle utilise seulement des :
    - mysql_real_connect
    - mysql_close
    - mysql_query

    Mon probl�me :
    Les deux m�thodes ne marchent pas entre elles :
    Lorsque j'utilise la m�thode recup_cycle (MySQL) seul, elle marche niquel
    Lorsque j'utilise la Socket Server seul, elle marche niquel

    Les deux foirent, pas � la compilation mais � l'ex�cution, lorsque j'ai cr�e ma Socket et que je fais appelle aux fonctions sql, il me dis que je n'ai pas de BDD :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    L'instruction à "0x10006db5" emploie l'adresse mémoire "0x00000014". La mémoire ne peut pas être "read".
    Et quand je lance le Debugger il me met
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    Unhandled exception in TabCtrl.exe (LIBMYSQL.DLL) : 0xC0000005: Access Violation.
    Voil� si vous avez une id�e 8)

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Par d�faut
    Je suis d�sol� d'insister aussi rapidement mais je dois r�gler ce probl�me assez vite car je n'avance plus dans mon projet...
    Comme �a n'a pas l'air dinteresser grand monde je peux peut �tre ajouter des pr�cisions ?

  3. #3
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    en debbuggant, quel est la ligne qui provoque l'access violation ?

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Par d�faut
    Merci nico de ton aide, alors l'erreur se cr�e � la ligne :

    De ma m�thode :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    CString C_Serveur::ServerConnection(int iListenPort)

  5. #5
    R�dacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par d�faut
    es-tu bien sur que DataPacket poss�de un \0 terminateur ?

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Par d�faut
    Bonne question, mon cher coll�gue qui m'envoie la cha�ne � lire (en PHP)
    concat�ne sa cha�ne avec un '\0' donc pour moi oui DataPacket est bien termin� par un z�ro terminal.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    5
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 5
    Par d�faut
    Pas d'autres id�es ?
    Question certainement idiote : est ce qu'il pourrais exister un "conflit" entre ma connexion Client / Serveur via la Socket et ma connexion MySQL ?

    Car le probl�me de BDD non trouv� vient depuis la cr�ation et l'utilisation des Sockets dans mon projet...

Discussions similaires

  1. Probl�me de connexion SQL Server 2005
    Par c22c07 dans le forum MS SQL Server
    R�ponses: 4
    Dernier message: 23/06/2006, 16h32
  2. [SQL-Server] Probl�me de connexion � SQL SERVER
    Par tit_oune dans le forum PHP & Base de donn�es
    R�ponses: 4
    Dernier message: 27/04/2006, 08h14
  3. [MySQL] Probl�me de connexion SQL depuis 1 script distant chez Free
    Par metalfire77 dans le forum PHP & Base de donn�es
    R�ponses: 11
    Dernier message: 23/04/2006, 07h26
  4. Probl�me de connexion SQL Server 2005
    Par kanko dans le forum MS SQL Server
    R�ponses: 1
    Dernier message: 13/02/2006, 17h14
  5. [VB.NET] Probl�me de connexion � SQL Server
    Par Nesmontou dans le forum ASP.NET
    R�ponses: 8
    Dernier message: 29/07/2005, 10h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo