Bonjour à tous,
M'essayant toujours à wxWidget, je me suis intéressé au sample "Client".
Le client envoie un buffer vers un serveur qui répond en renvoyant ce même buffer.
Il est alors capté par le client comparé au précédent et indique une erreur ou non.
Le code ressemble à ça donc:
Moi, j'ai tout simplement cherché à afficher le contenu du buffer retour dans un wxStaticText et tout ce que j'ai obtenu, c'est un jolie ligne de petits carrés.
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 const wxChar *buf1; wxChar *buf2; unsigned char len; m_sock->SetFlags(wxSOCKET_WAITALL); buf1 = _("Test string (less than 256 chars!)"); len = (unsigned char)((wxStrlen(buf1) + 1) * sizeof(wxChar)); buf2 = new wxChar[wxStrlen(buf1) + 1]; m_text->AppendText(_("Sending a test buffer to the server ...")); m_sock->Write(&len, 1); m_sock->Write(buf1, len); m_text->AppendText(m_sock->Error() ? _("failed !\n") : _("done\n")); m_text->AppendText(_("Receiving the buffer back from server ...")); m_sock->Read(buf2, len); m_text->AppendText(m_sock->Error() ? _("failed !\n") : _("done\n")); m_text->AppendText(_("Comparing the two buffers ...")); if (memcmp(buf1, buf2, len) != 0) { m_text->AppendText(_("failed!\n")); m_text->AppendText(_("Test 1 failed !\n")); } else { m_text->AppendText(_("done\n")); m_text->AppendText(_("Test 1 passed !\n")); }
J'ai tenté:
ou encore
Code : Sélectionner tout - Visualiser dans une fenêtre à part statText->SetLabel(wxString(buf2,wxConvLibc ))
ou encore
Code : Sélectionner tout - Visualiser dans une fenêtre à part statText->SetLabel(buf2)
Mais je n'obtiens toujours que des petits carrés, sauf pour le dernier où il n'y en a qu'un seul.
Code : Sélectionner tout - Visualiser dans une fenêtre à part statText->SetLabel(*buf2)
Suis sur que c'est un truc tout bête mais je n'ai pas trouvé alors merci à vous.
Partager