Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Может это просто... но... error!

367
07 августа 2007 года
Meatcoins
303 / / 18.01.2006
MySock.obj : error LNK2001: unresolved external symbol __imp__WSAStartup@8

Что за ошибка такая???

Код:
#include "stdafx.h"
#include "Winsock2.h"


int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{



    WSADATA WsaData;
    WSAStartup (0x0101, &WsaData);



    return 0;
}
240
07 августа 2007 года
aks
2.5K / / 14.07.2006
Ну неужели трудно поискать по форуму подобные темы, или почитать внимательней текст ошибки или хелп по WSAStartup?

Подключите Ws2_32.lib в проект.
22K
07 августа 2007 года
Pastor
43 / / 16.05.2007
#pragma comment(lib, "ws2_32.lib")
367
07 августа 2007 года
Meatcoins
303 / / 18.01.2006
[quote=aks]
Ну неужели трудно поискать по форуму подобные темы, или почитать внимательней текст ошибки или хелп по WSAStartup?
[/quote]
Я искал...
И в MSDN'е читал...
Просто не знал, что в C++ надо библиотеку именно так подключать - думал, что всё уже содержится в Winsock2.h!

#pragma comment(lib, "ws2_32.lib") - то что надо!
361
07 августа 2007 года
Odissey_
661 / / 19.09.2006
офф-топ
Цитата:
Просто не знал, что в C++ надо библиотеку именно так подключать - думал, что всё уже содержится в Winsock2.h!


это зависит от компилятора, не от языка...
gcc так не делает

240
07 августа 2007 года
aks
2.5K / / 14.07.2006
Да не столько даже от компилятора. Любой уже откомпилированный код надо же как то уметь линковать к результирующему исполняемому файлу. Уже скомпилярованные файлы проекта мы в настройках линкера/(компиляторо-линкера) указываем вручную, или это делает за нас IDE.

Но когда мы юзаем какой то сторонний код, откуда линкер узнает где брать реализацию, того чьи заголовки описанны в *.h файле?
Если там конечно не шаблонные классы/функции, с реализацией там же.

Вот и надо подключать нужные либы вручную всегда. В MSVC например так как показали с помощью #pragma comment, или указать в опциях проекта.
В других компиляторах так же надо указывать, своим способом.

Исключение только стандартные либы языка, которые обычно линкуются автоматически.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог