Avatar billede alexander_j Nybegynder
28. december 2006 - 10:09 Der er 1 kommentar og
2 løsninger

noob på svær opgave

Hej jeg er total noob i C++ og har fundet et svært script på nettet som jeg ikke kan få til at virke.
Scriptet kommer fra udvikleren og er udviklet af Robert Larsen (tutorial 2).
Jeg bruger Dev C++ og afvikler under windows kommandoprompt.

På et tidspunkt oprettes der et socketObject:
TCPSocket sock(host,80);

Dette fungerer fint, så længe der er tale om at host er et domænenavn (fx "www.google.com"), men så snart det bliver en ip-adresse (fx "127.0.0.1"), så låser scriptet og kommer ikke videre.

Jeg har to steder som jeg har mistænkt for at udgøre fejlen
1. i TCPSocket.h står der:
TCPSocket(int socket, struct sockaddr_in sock_addr, UInt32 timeOut = 0);

2. i TCPSocket.cpp står der:
TCPSocket::TCPSocket(int socket, struct sockaddr_in sock_addr, UInt32 timeOut)
  : m_address(sock_addr.sin_addr), m_port(ntohs(sock_addr.sin_port)), m_socket(socket), m_timeOut(timeOut)
{
}

TCPSocket::TCPSocket(IPAddress & adr, UInt16 port, UInt32 timeOut)
    : m_address(adr), m_port(port), m_socket(0), m_timeOut(timeOut)
{
}

TCPSocket::TCPSocket(string & adr, UInt16 port, UInt32 timeOut)
    : m_address(adr), m_port(port), m_socket(0), m_timeOut(timeOut)
{
}
Avatar billede arne_v Ekspert
29. december 2006 - 01:48 #1
koden kalder vel gethostbyname uden at checke for om det er et navn eller et nummer
Avatar billede alexander_j Nybegynder
10. januar 2007 - 17:51 #2
Måske, men det kan jeg ikke gennemskue :-( Jeg fandt et andet script som jeg har brugt i stedet for.

Hvis du vil have del i pointene, så kom med et svar, så deler vi.
Avatar billede arne_v Ekspert
10. januar 2007 - 17:58 #3
ok
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester