WinSock programing
Недавно я программировал сеть средствами WinSock на делфи, но теперь я перешол на C++ Builder, и когда мне надо било писать прогу на WinSock я подключил winsock2.h и компилятор материтса на WSA функции, мол "Unresolved external 'WSACreateEvent' referenced from D:\PROGRAM FILES\BORLAND\CBUILDER6\PROJECTS\GET_LOCAL_COMP_ON_PORT\UNIT1.OBJ" может надо что то ещо подключить?
Библиотека нужна ему:-) Конкретно: ws2_32.lib
Простите, я новичок в C++,но когда я прописываю #include <ws2_32.lib>, то получаю следующее " Unable to open import file 'ws2_32.lib ' " файл такой имеется в папке %Path%\CBuilder\Lib, что я не так сделал?
попробуй #pragma comment(lib,"libname.lib");
Большое спасибо! Проект компилирует, все как надо, вот только можно как ни будь избавитса от "Incorrect use of #pragma comment( <type> [,"string"] )" ?
убери ; в конце
Только начал разбираться с сокетами. Есть MS VS 2005, и код:
....
#pragma comment(lib, "ws2_32.lib")
#include <winsock.h>
using namespace std;
...
В Additional dependencies тоже прописал ws2_32.lib .
Однако все равно куча ошибок вроде таких:
"c:\work\sendmail\sendmail.cpp(445) : error C3861: 'connect': identifier not found
c:\work\sendmail\sendmail.cpp(452) : error C3861: 'recv': identifier not found"
Собственно вопрос - почему?
Кстати если щелкнуть на "невидной" функции "Go To Definition" то VS успешно прыгает в winsock.h ..
[highlight=cpp]
#include <windows.h>
#include <winsock.h>
INT WINAPI WinMain(HINSTANCE hInst, HINSTANCE, LPSTR strCmdLine, INT)
{
....
}
[/highlight]
и подключаю winsock.lib в additional dependencies. Все нормально собирается.
winsock.lib ?? не ws2_32.lib ?
Цитата: Albed0
winsock.lib ?? не ws2_32.lib ?
[COLOR=#339900][COLOR=Black]#include <winsock.h>[/COLOR] [COLOR=Black]=>[/COLOR] [/COLOR]winsock.lib
[COLOR=#339900][COLOR=Black]#include <winsock2.h>[/COLOR] [COLOR=Black]=>[/COLOR][/COLOR][COLOR=Black]ws2_32.lib [/COLOR][COLOR=#339900] [/COLOR]
Цитата: Albed0
winsock.lib ?? не ws2_32.lib ?
Все зависит от того, какой версии библиотеку WinSock вы хотите использовать.
По моему в Борланд билдере просто достаточно на писать #include <windows.h> и все никаких проблем с ВинАпишными сокетами :p