Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Создание базового приложения Winsock
Создайте пустой проект.
Добавьте пустой исходный файл C++ в проект.
Убедитесь, что среда сборки ссылается на каталоги Include, Lib и Src Комплекта средств разработки программного обеспечения Microsoft Windows (SDK) или более ранний Комплект средств разработки для платформы (SDK).
Убедитесь, что среда сборки ссылается на файл библиотеки Winsock Ws2_32.lib. Приложения, использующие Winsock, должны быть связаны с файлом библиотеки Ws2_32.lib. Комментарий #pragma указывает компоновщику, что требуется файл Ws2_32.lib.
Начните программирование приложения Winsock. Используйте API Winsock, включив файлы заголовков Winsock 2. Файл заголовка Winsock2.h содержит большинство функций, структур и определений Winsock. Файл заголовка Ws2tcpip.h содержит определения, представленные в документе Приложения WinSock Protocol-Specific 2 для TCP/IP, который включает более новые функции и структуры, используемые для извлечения IP-адресов.
Заметка
Stdio.h используется для стандартных входных и выходных данных, в частности функции printf().
#include <winsock2.h>
#include <ws2tcpip.h>
#include <stdio.h>
#pragma comment(lib, "Ws2_32.lib")
int main() {
return 0;
}
Заметка
Файл заголовка Iphlpapi.h требуется, если приложение использует API для работы с IP. Если требуется файл заголовка Iphlpapi.h, #include строка для файла заголовка Winsock2.h должна быть помещена перед строкой #include для файла заголовка Iphlpapi.h.
Файл заголовка Winsock2.h внутренне включает основные элементы из файла заголовка Windows.h, поэтому обычно не существует строки #include для файла заголовка Windows.h в приложениях Winsock. Если для файла заголовка Windows. h требуется строка #include, ей должен предшествовать макрос #define WIN32_LEAN_AND_MEAN. По историческим причинам заголовок Windows.h по умолчанию включает в себя заголовочный файл Winsock.h для Windows Sockets 1.1. Объявления в файле заголовка Winsock.h конфликтуют с объявлениями в файле заголовка Winsock2.h, необходимом для Windows Sockets 2.0. Макрос WIN32_LEAN_AND_MEAN предотвращает, чтобы заголовок Windows.h включал Winsock.h. Ниже показан пример иллюстрации.
#ifndef WIN32_LEAN_AND_MEAN
#define WIN32_LEAN_AND_MEAN
#endif
#include <windows.h>
#include <winsock2.h>
#include <ws2tcpip.h>
#include <iphlpapi.h>
#include <stdio.h>
#pragma comment(lib, "Ws2_32.lib")
int main() {
return 0;
}
Следующий шаг: Инициализация Winsock
Связанные разделы