Использование протоколов IPX, SPX, NETBIOS

       

NB_WReceiveBroadcastDatagram (0x23)


Команда предназначена для приема датаграмм, переданных командой NB_SendBroadcastDatagram. Она не может принимать датаграммы, переданные командой NB_SendDatagram.

Если перед вызовом команды в поле NetworkNameNumber блока NCB записать значение 0xFF, команда сможет принимать датаграммы от любой станции для любого имени.

Если длина принятой датаграммы превышает значение, указанное в поле Size, принятый блок данных будет обрезан.

Поля NCB на входе

Содержимое
Cmd0x23
NetworkNameNumberНомер, присвоенный при добавлении имени или 0xFF
BufferАдрес буфера, содержащего передаваемые данные
SizeРазмер буфера
PostRoutineДальний указатель на POST-программу или нулевое значение, если POST-программа не используется
AdapterNumberНомер адаптера; 0 - первый адаптер, 1 - второй

Поля NCB на выходе



Содержимое
CallNameИмя станции, от которой получена датаграмма
SizeРазмер принятого блока данных
CCodeПромежуточный код завершения команды
FinalCCodeОкончательный код завершения команды

Содержимое поля CCode

на выходе

Значение
0x00Нет ошибок
0x03Неправильный код команды
0x21Интерфейс занят
0x22Выдано слишком много команд
0x23Неправильное значение в поле номера адаптера AdapterNumber
0x40 - 0x4FНеобычное состояние сети (Unusual network condition)
0x50 - 0xFEСбой сетевого адаптера или другого сетевого аппаратного обеспечения

Содержимое поля

FinalCCode на выходе

Значение
0x00Нет ошибок
0x01Неправильная длина буфера
0x03Неправильный код команды
0x06Размер буфера слишком мал для того, чтобы разместить в нем принятые данные
0x0BКоманда отменена
0x13Неправильный номер имени
0x17Имя удалено
0x19Конфликт имен (внутренняя ошибка NETBIOS)
0x21Интерфейс занят
0x22Выдано слишком много команд
0x23Неправильное значение в поле номера адаптера AdapterNumber
0x40 - 0x4FНеобычное состояние сети (Unusual network condition)
0x50 - 0xFEСбой сетевого адаптера или другого сетевого аппаратного обеспечения



Содержание раздела