error LNK2001: unresolved external symbol



  • Hallo zusammen,

    ich versuche mich (auch) gerade in der Netzwerkprogrammierung, aber es scheitert schon beim ersten kleinen Beispiel.
    Kann mir jemand sagen, wieso ich diese Fehlermeldung erhalte?

    error LNK2001: unresolved external symbol "extern "C" int __stdcall WSAStartup(unsigned short,struct WSAData *)"

    In diesem Code:

    #include <windows.h>
    #include <winsock.h>
    #include <stdio.h>
    #include <iostream>
    
    //Prototypen
    int startWinsock(void);
    
    int main() 
    {
    	long rc;
    	rc=startWinsock();
    	if(rc!=0)
    	{
    		std::cout << "Fehler \n";
    		return 1;
    	}
    	else
    	{
    		std::cout << "Winsock gestartet!\n";
    	}
    	return 0;
    }
    
    int startWinsock(void)
    {
    	WSADATA wsa;
    	return WSAStartup(MAKEWORD(2,0),&wsa);
    }
    

    Vielen Dank für jede Hilfe!



  • Mach die Hilfe von WSAStartup auf und schau, in welcher *.lib sie zur Verfügung gestellt ist.
    Die füge ins Projekt zu in den Optionen oder in den Code als #pragma comment lib.



  • Oha. Ich hatte die lib-Datei bei Visual Studio 2008 Express unter "Additional Library Directories" eingetragen. 🤡 Das klingt aber auch sehr verdächtig danach, dass man die Bibliotheken dort einträgt.

    Danke für die Hilfe!


Anmelden zum Antworten