/* файл MySocket.h*******************************
#ifndef _MYSOCKET_H
#define _MYSOCKET_H
#include <winsock2.h>
//#include <stdlib.h>
class MySocket
{
protected:
MySocket(void);
~MySocket(void);
SOCKET S;
public:
int newsend(const char* buf, int len, int flags);
int newrecv(char* buf, int len, int flags);
}; //<- ЗДЕСЬ!!!!
#endif
Что это? - C2850: 'PCH header file'
Помогите, кто может!
Пишу программу для работы с сокетами. Среда - .NET 2003 (VC++)
Приложение клиент-серверное.Чтоб не описывать сокет каждого подключившегося клиента, хочу создать свой класс. Вот каким образом.
/* файл MySocket.h*******************************
#ifndef _MYSOCKET_H
#define _MYSOCKET_H
#include <winsock2.h>
//#include <stdlib.h>
class MySocket
{
protected:
MySocket(void);
~MySocket(void);
SOCKET S;
public:
int newsend(const char* buf, int len, int flags);
int newrecv(char* buf, int len, int flags);
}
#endif
/*файл MySocket.cpp*****************************
#include "MySocket.h"
MySocket::MySocket(void) // конструктор
{
WORD wVersion; // запрашиваемая версия winsock-интерфейса
WSADATA wsaData; // сюда записываются данные о сокете
wVersion = MAKEWORD (2, 0); // задаем версию winsock
int wsaInitError = WSAStartup (wVersion, &wsaData); // инициализируем winsock
if (wsaInitError != 0)
// говорим пользователю, что возникли проблемы и выходим
exit (1);
else
// если инициализация прошла успешно, то пора создавать сокет
S=socket(AF_INET, SOCK_STREAM, 0);
}
MySocket::~MySocket(void) //деструктор
{
shutdown(S, SD_BOTH);
closesocket(S);
}
int MySocket::newsend(const char * buf, int len, int flags)
{
int retcode=send (S, buf, len, flags);
return retcode;
}
int MySocket::newrecv(char * buf, int len, int flags)
{
int retcode=recv (S, buf, len, flags);
return retcode;
}
при попытке откомпилировать MySocket.cpp выдает следующее:
c:\srv\server\mysocket.cpp(6): error C2850: 'PCH header file' : only allowed at file scope; may not be in a nested construct
В чем ошибка - не пойму!
PS: Варианты ответа "в ДНК" - тоже вариант, но хотелось бы поточнее!)))
Цитата:
Originally posted by varta
Доброго времени суток!
Помогите, кто может!
Пишу программу для работы с сокетами. Среда - .NET 2003 (VC++)
Приложение клиент-серверное.Чтоб не описывать сокет каждого подключившегося клиента, хочу создать свой класс. Вот каким образом.
хотелось бы поточнее!)))
Доброго времени суток!
Помогите, кто может!
Пишу программу для работы с сокетами. Среда - .NET 2003 (VC++)
Приложение клиент-серверное.Чтоб не описывать сокет каждого подключившегося клиента, хочу создать свой класс. Вот каким образом.
Код:
хотелось бы поточнее!)))
Не забываем ";" в указанном месте! И еще может быть из-за неподключенного stdafx.h.
Цитата:
Originally posted by _const_
Не забываем ";" в указанном месте! И еще может быть из-за неподключенного stdafx.h.
Не забываем ";" в указанном месте! И еще может быть из-за неподключенного stdafx.h.
Спасибо огромное!
До баги докопался сам... в 5 утра...)))
Все дело было из-за точки с запятой.