[bcb6]winsock client recv || send?

0

witam
Nie wiem w jaki sposob uzyskac cos ala "wielowatkowsc" .Sprawa na pewno jest banalna ,ale wszystkie kursy o winsock'u ,ktore spotkalem opisywaly podstawowe zagadnienia.chcĘ napisac client'a irc .Oto kod:

#include <vcl.h>
#pragma hdrstop
#include <iostream>
#include <winsock2>
//---------------------------------------------------------------------------

#pragma argsused
using namespace std;
int main(int argc, char* argv[])
{

WSADATA WSD;

WSAStartup( MAKEWORD( 2 , 0 ) , &WSD);



      SOCKET m_socket;
      m_socket=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);

      sockaddr_in clientService;

      clientService.sin_family=AF_INET;
      clientService.sin_port=htons(6667);
      clientService.sin_addr.s_addr=inet_addr( "62.29.141.150" );

      connect(m_socket,(SOCKADDR*)&clientService,sizeof(clientService));



      char sendbuf[100] = "";
      char recvbuf[100] = "";
      char nick[]="NICK ktos\r\n";
      char user[]="USER ktos 255.255.255.0 255.255.255.0 I Rock With Telnet\r\n";


   <b> while(1){
     recv(m_socket,recvbuf,100,0);
     cout<<recvbuf<<endl;
     cin>>sendbuf;
     send(m_socket,sendbuf,100,0);
     }</b>
      closesocket(m_socket);
      WSACleanup();
      getchar();
      return 0;
}

Wszystko rozchodzi sie o petle while(1),chcialbym zeby program mogl odbierac przychodzace wiadomosci i zarazem wysylac tekst .
Z gory thx

0

jesli chcesz cos takiego zrobic to musisz niestety z UDP (bo wg specyfikacji TCP moze byc tylko peer-to-peer)

wtedy mzoesz sobie zbindowac port servera i jedziesz...
szersze info na :
http://www.linuxpl.org/LPG/node97.html

0

Moze ktos ma URL ,albo jest w posiadaniu soure clienta irc w c/c++?
bartosak:dzieki za zainteresowanie ,ale nie wiem czy moge wykozystac udp do laczenia sie z irc'm .

0

w momencie, gdy winsock cos odbiera wysylany jest komunikat systemowy WM_costam ;) (nie pamietam). no i robisz sobie obsluge komunikatow. i dokladnie wiesz, w ktorym momencie otrzymujesz dane.

1 użytkowników online, w tym zalogowanych: 0, gości: 1