Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Programmeren

C - Sockets programmeren

Anoniem
[DarthV]
6 antwoorden
  • Ik wil een begin maken met sockets..
    Heb een tutorial gedownload die niet echt uitgebreid is..
    En daar staat een voorbeeld in, die normaal gesproken te compilen is..
    Ik gebruik MS Visual C++ 4.0..

    Als ik compile krijg ik deze output:

    ——————–Configuration: socket1 - Win32 Debug——————–
    Linking…
    whois.obj : error LNK2001: unresolved external symbol _WSACleanup@0
    whois.obj : error LNK2001: unresolved external symbol _recv@16
    whois.obj : error LNK2001: unresolved external symbol _send@16
    whois.obj : error LNK2001: unresolved external symbol _connect@12
    whois.obj : error LNK2001: unresolved external symbol _gethostbyname@4
    whois.obj : error LNK2001: unresolved external symbol _htons@4
    whois.obj : error LNK2001: unresolved external symbol _socket@12
    whois.obj : error LNK2001: unresolved external symbol __WSAStartup
    whois.obj : error LNK2001: unresolved external symbol _WSAGetLastError@0
    Debug/socket1.exe : fatal error LNK1120: 9 unresolved externals
    Error executing link.exe.
    socket1.exe - 10 error(s), 0 warning(s)

    Geen idee wat dit inhoud..

    Iemand die me dit kan uitleggen ofzo?

    En uhm.. wat zijn de verschillen tussen socket.h en winsock.h?
    In elke handleiding word er over de 1e gesproken.. terwijl ik alleen winsock.h heb..

    Snap er niet echt veel van op deze manier..
  • 'Unresolved external' houdt in dat de gegeven functie tijdens het linken niet gevonden kan worden. Waarschijnlijk link je de noodzakelijke library niet mee.
  • Als je zo'n project opent is de winsock library standaard niet gekoppeld in de ontwikkel omgeving. Je moet dus de winsock lib toevoegen aan het project
  • In jouw geval klik je dus op project->settings en dan het tabblad linker.

    Daar kun je je libs invullen die meegelinkt moeten worden :)
  • Mocht je dit bericht ooit nog lezen :wink: en je wilt windows netwerk gaan leren dan kan ik je het volgende boek aanraden:

    Network Programming for Microsoft Windows
    ISBN 0-7356-0560-2

    Het is al weer even geleden dat ik dat boek gekocht heb (1999) dus er zal wel een nieuwe druk uit zijn, maar in dat boek staat in principe alles wat je maar moet weten over windows en winsock programmeren, van basis kennis tot geavanceerde programma's. De onderwerpen in dit boek waren eigenlijk de stukken die ik miste in veel andere boeken en tutorials.
  • Zijn dat niet gewoon standaard BSD sockets? Die stack heeft M$ toch gejat geloof ik.

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.