Patrick.Karre Geschrieben 20. Dezember 2004 Geschrieben 20. Dezember 2004 Hallo Leutz, ich beschäftige mich seit letzter Woche mit Socket-Programmierung. Hierzu versuche ich mir WSADATA eine Verbindung gerzustellen. Leider scheitert dies schon am Initialisieren. Ich habe folgenden Code: int StartWinsock(void) { WSADATA WSAData; return WSAStartup(MAKEWORD(2,0), &WSAData); } und bekomme folgende Meldungen: c:\Dokumente und Einstellungen\Patrick\Eigene Dateien\Visual Studio Projects\Prototyp\Prototyp.cpp(123): error C2065: 'WSADATA' : undeclared identifier c:\Dokumente und Einstellungen\Patrick\Eigene Dateien\Visual Studio Projects\Prototyp\Prototyp.cpp(123): error C2146: syntax error : missing ';' before identifier 'WSAData' c:\Dokumente und Einstellungen\Patrick\Eigene Dateien\Visual Studio Projects\Prototyp\Prototyp.cpp(123): error C2065: 'WSAData' : undeclared identifier c:\Dokumente und Einstellungen\Patrick\Eigene Dateien\Visual Studio Projects\Prototyp\Prototyp.cpp(124): error C3861: 'WSAStartup': identifier not found, even with argument-dependent lookup c:\Dokumente und Einstellungen\Patrick\Eigene Dateien\Visual Studio Projects\Prototyp\Prototyp.cpp(124): error C3861: 'WSAData': identifier not found, even with argument-dependent lookup Ich benutze als Entwicklungsoberfläche MS-Visual-Studio 2003 und als BS Windows XP. Keine Ahnung woran der Fehler liegen könnte, habe ich schon hier im Forum gesucht, aber keine funktionierende Lösung gefunden. Gruß Patrick Zitieren
Klotzkopp Geschrieben 20. Dezember 2004 Geschrieben 20. Dezember 2004 In der MSDN Library steht sowohl bei WSADATA als auch bei WSAStartup: Header: Declared in Winsock2.h. Zitieren
Patrick.Karre Geschrieben 20. Dezember 2004 Autor Geschrieben 20. Dezember 2004 Die Includierung Winsock2.h hatte ich gemacht, allerdings bekomme ich dann die Fehlermeldung: #include <Winsock2.h> c:\Programme\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include\afxv_w32.h(18): fatal error C1189: #error : WINDOWS.H already included. MFC apps must not #include <windows.h> Zitieren
Klotzkopp Geschrieben 20. Dezember 2004 Geschrieben 20. Dezember 2004 Du hättest auch gleich sagen können, dass du eine MFC-Anwendung hast. Falls das Projekt noch nicht zu groß ist, solltest du es neu anlegen, und beim Assistenten die Unterstützung für Windows Sockets aktivieren. Falls du das nicht willst oder kannst, probier mal das hier: Setze ans Ende der stdafx.h: #include <afxsock.h> Setze folgendes in die InitInstance-Methode der App-Klasse, hinter den Aufruf von CWinApp::InitInstance: if (!AfxSocketInit()) { AfxMessageBox(IDP_SOCKETS_INIT_FAILED); return FALSE; }[/code] P.S.: Verschoben nach C++: Compiler, IDEs, APIs Zitieren
Patrick.Karre Geschrieben 20. Dezember 2004 Autor Geschrieben 20. Dezember 2004 Es funktioniert, danke Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.