Problemer med winsock2.h

Tags:    c++

Hey jeg er igang med et af de sidste eksempler i min c++ grundbog hvor der er et eksempel med noget network programmering, men når jeg compiler source koden siger den at der er en fejl i winsockt2.h som jo er en fil jeg indcluder...

Man kan hente eksemplerne fra bogen på forfatterens hjemmeside, men når prøver at compile dem kommer compileren med samme fejl.

Compiler Dev c++ (Version 4)

Fejlene er :
C:\\DEV-C_~1\\Include\\winsock2.h:46: unbalanced `#endif'

c:\\dev-c_~1\\include\\winsock2.h unbalanced `#endif'


Er der en fejl i winsock2.h??
Hvad skal jeg gøre?





[Redigeret d. 27/05-05 13:44:37 af No-floppy]

[Redigeret d. 27/05-05 13:44:51 af No-floppy]



5 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Må vi se din kode frem til der hvor du inkluderer winsock2.h ?



En søgning på google viser at der er andre der har problemer med winsock2.h til Dev-Cpp. Prøv at kikke, eller post din winsock2.



Du kan også bare inkludere mmsystem.h og linke til libwinmm.a i stedet - det virker i hvert fald, og deri inkluderes WinSock2 også. Jeg kan i hvert fald benytte alt fra WinSock2 med mmsystem.h, så dette burde løse dine problemer.

1101110100010110000101000001

Killers don't end up in jail - they end up on a high-score!

[Redigeret d. 28/05-05 12:15:55 af Nicolai Lyster Fersner]



En søgning på google viser at der er andre der har problemer med winsock2.h til Dev-Cpp. Prøv at kikke, eller post din winsock2.



Sådan her ser min winsock2.h ud




/*

Definitions for winsock 2

FIXME: This is mostly a stub for now. Taken from the Wine project.

Portions Copyright (c) 1980, 1983, 1988, 1993
The Regents of the University of California. All rights reserved.

Portions Copyright (c) 1993 by Digital Equipment Corporation.
*/

#ifndef _WINSOCK2_H
#define _WINSOCK2_H
#define _GNU_H_WINDOWS32_SOCKETS
#ifdef __cplusplus
extern "C" {
#endif

#include <winsock.h>

#define FD_MAX_EVENTS 10

#define FD_READ_BIT 0
#define FD_WRITE_BIT 1
#define FD_OOB_BIT 2
#define FD_ACCEPT_BIT 3
#define FD_CONNECT_BIT 4
#define FD_CLOSE_BIT 5

typedef struct _WSANETWORKEVENTS {
long lNetworkEvents;
int iErrorCode[FD_MAX_EVENTS];
} WSANETWORKEVENTS, *LPWSANETWORKEVENTS;

typedef HANDLE WSAEVENT;
#define WSACreateEvent() CreateEvent(NULL, TRUE, FALSE, NULL)
/* etc */

int WINAPI WSAEnumNetworkEvents(SOCKET s, WSAEVENT hEventObject, LPWSANETWORKEVENTS lpNetworkEvents);
int WINAPI WSAEventSelect(SOCKET s, WSAEVENT hEventObject, long lNetworkEvents);

ifdef __cplusplus
}
#endif
#endif




Der mangler en # foran ifdef i bunden af filen. Prøv at sætte den ind.

Eller opdater dev-cpp



t