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 :

Pb affichage d'un flux de données


Sujet :

MFC

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 134
    Par défaut Pb affichage d'un flux de données
    Bonjour voici mon problème, je cherche a afficher un flux de données en temps reel dans une boite de dialogue. Pour cela j'utilise la classe CAsyncSocket pour recevoir ma trame de données qui est constitué d'une vingtaine d'octets. La fonction OnReceive est appeler a chaque fois que quelque chose arrive sur le socket et je souhait l'afficher directement a lecran tout en gardant la main dans mon application ( je doit pouvoir en fait arreter le flux de donnee). Avec la methode que j'utilise mon application est "bloqué", je ne voit rien safficher a l'ecran et je ne peut pas utiliser mon appli. Le flux bloque mon appli.

    Voici mon code ma variable membre m_affiche est un C_String que je mets à jour avec UpdateData(FALSE).
    Connaissez vous un moyen pour faire un affichage en temp reel merci.

    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
     
    void TCPSocket::OnReceive(int nErrorCode) 
    {
    	TCPSocket* temp;
    	temp=((CServerDlg*)m_pDlg)->SocketTCP2;
     
    	static int i=0;
     
    	i++;
     
    	TCHAR buff[127];
    	int nRead;
    	nRead = temp->Receive(buff,127,0); 
     
    	buff[nRead] = 0; //terminate the string
    	CString szTemp(buff);
     
    //*************************************************************************************
    //Morceau de code rajouter pour enregistrer le dans un fichier
     
    		CFile fichier;
    		fichier.Open("reception.dat",CFile::modeCreate |CFile::modeWrite);
    		fichier.Write(szTemp,szTemp.GetLength());
    		fichier.Close();
     
    //*************************************************************************************
     
    	((CServerDlg*)m_pDlg)->m_affiche += " \n ";
    	((CServerDlg*)m_pDlg)->m_affiche += buff;
    	((CServerDlg*)m_pDlg)->UpdateData(FALSE);
    	CAsyncSocket::OnReceive(nErrorCode);
    }

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 134
    Par défaut
    salut jai trouver une premise de solution je vait essayer les CList comme ma trame de reception est tres petite. Sa va clignoter mais bon du moment que sa marche.

    Bon ben la Clist sa ne marche pas. Savez vous comment je peut rafraichir ma fenetre pour afficher mon flux en temp reel tout en gardant la main sur mon application.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    134
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2006
    Messages : 134
    Par défaut
    C'est encore moi j'ai trouver comment faire alors j'utilise un cedit que je mets a jour par un ReplaceSel(txt). Sa marche nikel super bon sa clignotte mais sa marche. J'affiche mon flux de données en temps reel comme voulut.
    Si vous avez es solution pour eviter le clignottement je suis preneur merci.

Discussions similaires

  1. Je cherche un outil d'affichage en continu d'un flux de données numériques (oscilloscope?)
    Par jack-ft dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 26/01/2011, 17h11
  2. [AS2] XMLSocket -- Affichage d'un flux de données
    Par aldo-tlse dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 03/04/2009, 02h53
  3. [XML] [EXPAT] traitement d'un flux de donnée xml contenant des \n
    Par firejocker dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 23/02/2006, 16h49
  4. affichage dynamique en fonction des données en base
    Par jengo dans le forum Bases de données
    Réponses: 1
    Dernier message: 28/10/2004, 10h22
  5. Rediriger un flux de données sous linux
    Par Nicaisse dans le forum POSIX
    Réponses: 7
    Dernier message: 01/07/2003, 16h04

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