Використання windows sockets

Специфікацією Windows Sockets визначається інтерфейс бібліотеки, яка динамічно завантажується, файл якої, як правило, називається winsock.dll або wsock32.dll. Функції цієї бібліотеки реалізуються розробниками. Цей інтерфейс забезпечив розробників програм загальним підходом для реалізації мережевих комунікацій, незалежно від характеру мережі, яка використовується, і програмного забезпечення.

При програмуванні з використанням Winsock важливим поняттям є гніздо (socket), яке є базовим об`єктом, що використовується в програмах для виконання більшості мережевих з`єднань. Кожному комп`ютеру привласнюється числова адреса, що називається IP-адресою. Нехай, наприклад, один комп`ютер має адресу 192.168.7.62. Програми, які працюють на ньому, повинні за допомогою Winsock з`єднається з іншим комп`ютером. Виникає питання: якщо за адресою 192.168.7.62 надходить запит, яка програма повинна його обробляти?



Кожен запит, який надходить в комп`ютер, містить номер порту - число від 1024 і вище, яке вказує, якою програмою призначений запит. Деякі номери портів зарезервовані для стандартного використання. Наприклад, порт 80 традиційно використовується серверами Web для отримання запитів на документи від таких програм, як Internet Explorer і інших.

Відео: How to fix Windows Sockets Initialization failed error in Windows 10

Робота з Winsock заснована на з`єднанні: дві програми встановлюють зв`язок за допомогою гнізд на кожному кінці, а потім передають і приймають дані по цьому з`єднанню. Деякі програми можуть передавати дані без встановлення з`єднання, але в даному випадку немає гарантії, що дані будуть передані за призначенням.

Технологія гнізд дозволяє встановити зв`язок між програмами за аналогією з процесами запису і зчитування файлів. Однак для організації з`єднання між програмами необхідна наявність деякої іншої інформації, ніж для відкриття файлу. Для відкриття файлу потрібно знати його назву і розташування. Для відкриття гніздового з`єднання потрібно знати IP-адресу комп`ютера, на якому виповнюється програма, з якою потрібно встановити зв`язок, а також адреса порту, який прослуховується цією програмою.

Відео: COMO RESOLVER socketexception unrecognized windows sockets error 10106 create

Зауважимо, що лише одна програма може прослуховувати повідомлення, які надходять на заданий порт деякого комп`ютера. Хоча на одному і тому ж комп`ютері відразу кілька програм можуть очікувати запитів встановлення зв`язку, кожна з них буде прослуховувати окремий порт.
При створенні програм в середовищі Visual Studio. NET досить встановити в ньому підтримку мережевих комунікацій за допомогою класів інтерфейсу Winsock. Базовий клас цього інтерфейсу, CAsyncSocket, забезпечує повну підтримку гніздовий зв`язку, яка керується повідомленнями. Можна створити свій власний похідний клас, який буде перехоплювати відповідні повідомлення, і виконувати відповідні дії. Клас CSocket є похідним від CAsyncSocket.

Зустрічайте новий google earth російської версії. Google Earth - це тривимірна модель землі, створена на основі супутникових знімків високого дозволу.

Поділися в соц мережах:
Cхоже

Увага, тільки СЬОГОДНІ!