Локальные сети персональных компьютеров Использование протоколов IPX, SPX, NETBIOS

NB_WCall (0x10)


Команда устанавливает канал между двумя именами, заданными в блоке NCB. Эти имена могут относиться к программам, работающим на разных станциях или на одной станции. В поле OurName указывается имя станции, которая устанавливает канал, в поле CallName - имя станции, с которой устанавливается канал.

Для успешного создания канала принимающая сторона должна выдать команду NB_Listen, которая будет описана ниже.

Можно установить канал не только с обычным, но и с групповым именем. Для этого придется выдать команду NB_WCall несколько раз, так как за один вызов создается только один канал.

Команда NB_WCall делает несколько попыток создать канал и в случае

неудачи возвращает код ошибки.

При создании канала указывается время тайм-аута для операций приема и передачи данных. Если команды приема или передачи данных через каналы не будут выполнены в течение времени тайм-аута, они (команды) будут прерваны. При этом считается, что канал неработоспособен.

После создания канала поле LocalSessionNumber будет содержать присвоенный номер канала. Сохраните его для использования в процессе приема и передачи данных по каналу.



Поля NCB на входе Содержимое
Cmd 0x10
CallName Имя, с которым устанавливается канал
OurName Имя станции, создающей канал
ReceiveTimeout Время ожидания приема, в 1/2 с
SendTimeout Время ожидания передачи, в 1/2 с
PostRoutine Дальний указатель на POST-программу или нулевое значение, если POST-программа не используется
AdapterNumber Номер адаптера; 0 - первый адаптер, 1 - второй

Поля NCB на выходе Содержимое
LocalSessionNumber Присвоенный номер канала
CCode Промежуточный код завершения команды
FinalCCode Окончательный код завершения команды

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

на выходе

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

FinalCCode на выходе
Значение
0x00 Нет ошибок
0x03 Неправильный код команды
0x05 Истекло время ожидания
0x09 Нет доступных ресурсов
0x0B Команда отменена
0x11 Переполнилась таблица каналов
0x12 Создание канала отвергнуто
0x14 Нет ответа от станции с указанным именем или в сети нет такого имени
0x15 Неправильное имя
0x18 Ненормальное закрытие канала
0x19 Конфликт имен (внутренняя ошибка NETBIOS)
0x21 Интерфейс занят
0x22 Выдано слишком много команд
0x23 Неправильное значение в поле номера адаптера AdapterNumber
0x40 - 0x4F Необычное состояние сети (Unusual network condition)
0x50 - 0xFE Сбой сетевого адаптера или другого сетевого аппаратного обеспечения

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