Home

Page 244
Page 244
background image

Сеть на низком уровне 237

• flags — могут быть установлены таким образом, что поступившее сооб-

щение после чтения и анализа его содержимого не будет удалено из оче-
реди, или настроены на получение данных

 — данные будут скопированы в буфер, но не удалены из

входной очереди;

 — то же, что и в функции send.

Функция recv возвращает количество байтов, фактически переданных поль-
зовательской программе.

Для датаграммных версий используются функции sendto и

 Обе

функции работают так же, как и в send и recv, только в качестве дополни-
тельных параметров указываются адреса.

Теперь мы научились получать соединения, посылать данные, осталось

только научиться закрывать соединения. Функция shutdown закрывает гнез-

довую

5.6. Работа с NetBIOS

Я не собираюсь описывать все возможности NetBIOS, потому что эта тема
заслуживает отдельного разговора продолжительностью не в одну сотню
страниц, но основные сведения постараюсь дать. Описанного в этом разделе

не хватит для написания профессионального приложения, работающего по

протоколу NetBIOS, но будет достаточно для продолжения дальнейшего са-
мостоятельного обучения.

Протокол NetBIOS достаточно прост, потому что API-протокол состоит

только из одной функции NetBIOS. Несмотря на то, что функция одна, она
умеет больше, чем любая другая функция из других сетевых библиотек.

Именно поэтому я ее не смогу описать всю, но небольшие начальные све-

дения постараюсь предоставить.

В Windows за работу NetBIOS отвечает библиотека netapi32.dll. Это значит,

что поклонникам языка C++ нужны будут заголовочные файлы и файл биб-

лиотеки

 Нам, программистам на Delphi, немного легче и доста-

точно только заголовочного файла nb.pas. Его вы найдете на компакт-диске

вместе с исходником примера из этой части или в директории Headers/nb.

Как я уже сказал, вся библиотека NetBIOS крутится вокруг одноименной

функции, и ее объявление выглядит вот таким вот образом:

function

 NCB: TNCB): Word;

Как видите у нее только один параметр — структура NCB. Это достаточно

сложная структура, в которой и заключена вся работа. С ее помощью мы

будем говорить библиотеке, что от нее требуется, а также принимать и по-

лучать любые данные.


Copyright © 2020 Файлообменник files.d-lan.dp.ua

Использование любых материалов сайта возможно только с разрешения автора.