"Anders Lund" <anders@zaim.dk> wrote
> "Anders Lund" <anders@zaim.dk> skrev i en meddelelse
> news:bckr8b$m9p$1@sunsite.dk...
> > Hvis der er en der evt ville poste et kode eksempel ville jeg også blive
> > meget glad, for jeg tror man lær meget af at rode lidt med det selv.
>
> Er der evt andre der har ideer. Jeg tror det andet er en lidt for stor
> mundfuld
Prøv, som socketd bl.a. foreslog, at kigge på på ACE
(
http://www.cs.wustl.edu/~schmidt/ACE.html).
Du vil kunne finde mange eksempler og meget dokumentation der.
Desuden findes der en række bøger, bl.a.
   C++ Network Programming, Volume 1
   Douglas C. Schmidt, Stephen Huston
   ISBN 0-201-60464-7
   C++ Network Programming, Volume 2
   Douglas C. Schmidt, Stephen Huston
   ISBN 0-201-79525-6
Et lille eksempel, der næsten gør hvad du spørger om:
<C++ kode>
#include "ace/INET_Addr.h"
#include "ace/SOCK_Connector.h"
#include "ace/SOCK_Stream.h"
#include <iostream>
#include <iterator>
int main (int argc, char *argv[])
{
   using std::cout;     using std::endl;
   using std::ostream_iterator;
   ACE_SOCK_Connector connector;
   ACE_SOCK_Stream peer;
   ACE_INET_Addr peer_addr;
   if(peer_addr.set (80, "ace.ece.uci.edu") == -1)
      return 1;
   if(connector.connect (peer, peer_addr) == -1)
      return 1;
   iovec iov[3];
   char      GET[] = "GET ";
   iov[0].iov_base = GET;
   iov[0].iov_len = sizeof(GET);
   char     PATH[] = "index.html";
   iov[1].iov_base = PATH;
   iov[1].iov_len = sizeof(PATH);
   char     HTTP[] = " HTTP/1.0\r\n\r\n";
   iov[2].iov_base = HTTP;
   iov[2].iov_len = sizeof(HTTP);
   char buf[32*1024];
   if (peer.sendv_n (iov, sizeof(iov)/sizeof(iov[0])) == -1)
      return 1;
   for (ssize_t n; (n = peer.recv (buf, sizeof buf)) > 0; )
      copy(buf+0, buf+n, ostream_iterator<char, char>(cout));
   return peer.close();
}
</C++ Kode>
Hvis du ingen erfaring har med netværksprogrammering, så er der nok en del
at lære uanset hvad du gør, for at forstå hvad der sker.
Venlig hilsen
Mogens Hansen