error LNK2019 при работе с Windows Sockets
Я создал консольное приложение (Visual С++ - Win32 Console Project) и работаю с Windows Sockets (мне необходимо чтобы приложение компилировалось как под Borland/Visual так и под gcc, т.е. не использовало никаких функций специфических для конкретных сред разработки, поэтому я могу использовать только WinAPI и стандартные библиотеки C/C++,- таково требование к создаваемому коду, но тестируется все на Visual C++).
Я написал следующий код (это просто тест, так что я засунул его в main, а так он будет в конструкторе класса инициализирующем соединение с сервером, но это не важно; так вот я написал следующий код):
#include <windows.h>
#include <winsock.h>
#include <stdio.h>
void main(void)
{
int rc;
WSADATA WSAData;
rc = WSAStartup(MAKEWORD(1, 1), &WSAData);
if(rc != 0)
puts("Не работает");
else
puts("Все OK");
}
При компиляции в Visual C++ мне выдается следующая ошибка:
test error LNK2019: unresolved external symbol _WSAStartup@8 referenced in function _main
В свою очередь Borland C++ мне не выдает ошибок вообще.
Как я понимаю Windows Sockets использует WS2_32.DLL и MSWSOCK.DLL и если Borland их находит автоматически то Visual C++ нет. Подскажите мне пожалуйста как я могу заставить Visual C++ компилировать данный код, может там надо что-то изменить в настройках моего Win32 Console Project?
Заранее спасибо за любой ответ.
Цитата:
Originally posted by rarelang
Помогите мне пожалуйста решить следующую проблему:
Я создал консольное приложение (Visual С++ - Win32 Console Project) и работаю с Windows Sockets (мне необходимо чтобы приложение компилировалось как под Borland/Visual так и под gcc, т.е. не использовало никаких функций специфических для конкретных сред разработки, поэтому я могу использовать только WinAPI и стандартные библиотеки C/C++,- таково требование к создаваемому коду, но тестируется все на Visual C++).
Я написал следующий код (это просто тест, так что я засунул его в main, а так он будет в конструкторе класса инициализирующем соединение с сервером, но это не важно; так вот я написал следующий код):
#include <windows.h>
#include <winsock.h>
#include <stdio.h>
void main(void)
{
int rc;
WSADATA WSAData;
rc = WSAStartup(MAKEWORD(1, 1), &WSAData);
if(rc != 0)
puts("Не работает");
else
puts("Все OK");
}
При компиляции в Visual C++ мне выдается следующая ошибка:
test error LNK2019: unresolved external symbol _WSAStartup@8 referenced in function _main
В свою очередь Borland C++ мне не выдает ошибок вообще.
Как я понимаю Windows Sockets использует WS2_32.DLL и MSWSOCK.DLL и если Borland их находит автоматически то Visual C++ нет. Подскажите мне пожалуйста как я могу заставить Visual C++ компилировать данный код, может там надо что-то изменить в настройках моего Win32 Console Project?
Заранее спасибо за любой ответ.
Помогите мне пожалуйста решить следующую проблему:
Я создал консольное приложение (Visual С++ - Win32 Console Project) и работаю с Windows Sockets (мне необходимо чтобы приложение компилировалось как под Borland/Visual так и под gcc, т.е. не использовало никаких функций специфических для конкретных сред разработки, поэтому я могу использовать только WinAPI и стандартные библиотеки C/C++,- таково требование к создаваемому коду, но тестируется все на Visual C++).
Я написал следующий код (это просто тест, так что я засунул его в main, а так он будет в конструкторе класса инициализирующем соединение с сервером, но это не важно; так вот я написал следующий код):
#include <windows.h>
#include <winsock.h>
#include <stdio.h>
void main(void)
{
int rc;
WSADATA WSAData;
rc = WSAStartup(MAKEWORD(1, 1), &WSAData);
if(rc != 0)
puts("Не работает");
else
puts("Все OK");
}
При компиляции в Visual C++ мне выдается следующая ошибка:
test error LNK2019: unresolved external symbol _WSAStartup@8 referenced in function _main
В свою очередь Borland C++ мне не выдает ошибок вообще.
Как я понимаю Windows Sockets использует WS2_32.DLL и MSWSOCK.DLL и если Borland их находит автоматически то Visual C++ нет. Подскажите мне пожалуйста как я могу заставить Visual C++ компилировать данный код, может там надо что-то изменить в настройках моего Win32 Console Project?
Заранее спасибо за любой ответ.
Подключи соотв. .Lib (Ws2_32.lib)