2010-07-29 4 views
2

J'utilise EVC++ et je veux compiler le programme qui utilise les prises de courant. J'ai incluserreur de lien WSAStartup

#include <winsock2.h>

Et j'ai inclus dans les propriétés du projet d'un chemin à Ws2.lib Mais encore obtenir l'erreur à l'étape du lien:

LNK2019 d'erreur: symbole externe non résolu WSAStartup référencé dans la fonction ...

Comment résoudre ce problème?

Répondre

5

Vous n'avez pas lié votre programme avec la bibliothèque Winsock. La bibliothèque Winsock 2 s'appelle ws2_32.lib (statique) ou ws2_32.dll (dynamic). Cela devrait déjà être sur votre système. vous avez juste besoin de dire à votre compilateur/éditeur de liens de lier votre programme à celui-ci. La méthode de faire cela varie selon le compilateur, et malheureusement je ne suis pas familier avec EVC++.

+0

http://msdn.microsoft.com/en-us/library/ms911778.aspx Il y est écrit sur le fonctionnement WSAStartup. Il utilise ws2.dll. Mais rien n'est écrit à propos de ws2_32.dll – erjik

7

#pragma comment(lib,"WS2_32") après tout #include « s

+0

Cela a fonctionné pour moi sur Visual Studio. Fondamentalement, nous devons fournir les symboles pour les fonctions à l'éditeur de liens lors de la liaison. – prashanthns