MFC-Socket-Library ??
-
Guten Abend beisammen,
ich würde gerne MFC-Sockets in mein Proggi einbinden, wie z.B. CSocket.
Hab dazu auch schon die Headerdatei <afxsock.h> included, aber der Compiler liefert mir einen Fehler von wegen unaufgelöste externe Verweise-is ja klar ich hab die Lib nicht mit eingebunden. Welche muss ich denn dazu einbinden ?Schön' Gruß
Xzibit
-
ws2_32.lib vielleicht?
-
Du musst einfach nur folgendes machen:
In "xxxApp:InitInstance" nach "CWinApp::InitInstance();" noch folgendes einfügen:
if (!AfxSocketInit()) { AfxMessageBox(IDP_SOCKETS_INIT_FAILED); return FALSE; }
Dann solltest Du noch in Deiner rc-Datei (Ressource-Datei) nach einer vorhanden Stringtabelle die folgende einfügen:
STRINGTABLE
BEGIN
IDP_SOCKETS_INIT_FAILED "Fehler beim Initialisieren der Windows-Sockets."
ENDund in der "resources.h" natrürlich noch dein Folgenden Eintrag aufnehmen:
#define IDP_SOCKETS_INIT_FAILED 103
und in der "stdafx.h" noch ganz unten folgendes:
#include <afxsock.h> // MFC-Socket-Erweiterungen
-
Sorry ich glaub ich habs unzureichend beschrieben.
Also des Problem is folgendes:
Ich hab mir eine Konsolenanwendung zurechtgelegt, eine ganz normale-ohne MFC Unterstützung. Und nun hab ich die <afxsock.h> inkludiert, AfxSocketInit() in main() aufgerufen, jedoch liefert mir der Linker folgende Ausgabe:"nafxcwd.lib(thrdcore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __endthreadex
nafxcwd.lib(thrdcore.obj) : error LNK2001: Nichtaufgeloestes externes Symbol __beginthreadex "Also wird er schätzungsweise mal die Lib in der endthreadex, bzw. beginthreadex definiert ist nicht finden. Aber welche ist das und muss ich dann nach der Inkludierung der Library dann noch weitere Bibliotheken dem Projekt beifügen ? Ich meine die Funcs in der <afxsock.h> sind ja auch von den MFC-Bibliotheken abhängig...aber welche Libs sind das ?...
Xzibit
-
Dann musst Du Deine Projekteinstellungen von "Single-Threaded" nach "Multi-Threaded" ändern...
Project|Properties|C/C++|Code generation|Runtime Library: Multi-Threaded...
PS: Es wäre hilfreich, wenn Du nächstes mal gleich die Fehler gespostet hättest