|
Шаг 2 - Инициализация
Создавайте проект Win 32 Console с именем WinSock1, на вопрос о типе в диалоговом окне скажите "Hello Word" application. После этого есть необходимость подключения LIB файла. Это делается в меню Project далее Setting, далее Link и Object/library modules. Туда надо вписать Wsock32.lib. Вот как это выглядит.
А вот и код программы.
// WinSock1.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "winsock.h"
const int WINSOCK_VERSION = 0x0101;
void main()
{
WSADATA wsaData;
if (WSAStartup(WINSOCK_VERSION, &wsaData))
{
printf ("winsock not bi initialized !\n");
WSACleanup();
}
else printf("Winsock initial OK !!!!\n");
if (WSACleanup()) printf("Error Cleapir\n");
else printf("Cleapir Good !!!!!\n");
}
С помощью #include "winsock.h" подключаем библиотечные функции. Объявляем константу с номером версии, которую мы будем поддерживать - WINSOCK_VERSION.
Функция WSAStartup инициализирует WinSock. Эта функция всегда самая первая при начале работы с WinSock. Вот как она описана.
int WSAStartup (
WORD wVersionRequested,
LPWSADATA lpWSAData );
Первый параметр - это версия, которая будет использоваться. Младший байт основная версия, старший байт расширение версии. Если инициализация состоялась, то вернется нулевое значение. Вобщем-то инициализация заключается в сопоставлении номера версии и реально существуюшей DLL в системе.
Второй параметр - это указатель на структуру WSADATA, в которую возвратятся параметры инициализации.
typedef struct WSAData {
WORD wVersion;
WORD wHighVersion;
char szDescription[WSADESCRIPTION_LEN+1];
char szSystemStatus[WSASYS_STATUS_LEN+1];
unsigned short iMaxSockets;
unsigned short iMaxUdpDg;
char FAR * lpVendorInfo;
} WSADATA, FAR * LPWSADATA;
WSACleanup завершает использование данного DLL и прерывает обращение к функциям WinSock. При удачном выполнении вернется нуль.
Загрузить проект | Предыдущий шаг | Следующий Шаг | Оглавление By Artem.
Используются технологии uCoz
|