NetBios - это основа для связи между приложениями. Имена поддерживаются для каждого LANA и для каждого процесса в Сети. Имена используются для связи между процессами. Приложения поддерживают имена через переменную ncb_name в структуре NCB. Имена бывают:
При использовании уникального имени NetBios проверяет сеть и адаптеры для исключения конфликтов. Группое имя может быть использованно различными адаптерами. Ресурсы идентифицируются именами динамически когда пользователь запускает компьютер или входит в сеть.
Длинна имени NetBios не должна быть больше 16 символов. Windows NT позволяет отпределять первые 15 символов. Последний символ зарезервирован для типа ресурса.
Для работы с именами предусмотрены следующие команды:
NCBADDGRNAME (добавить груповое имя) NCBADDNAME (добавить имя) NCBDELNAME (удалить имя) NCBFINDNAME (найти имя)
Для получения информации по именам используется структура NAME_BUFFER:
typedef struct _NAME_BUFFER { UCHAR name[NCBNAMSZ]; UCHAR name_num; UCHAR name_flags; } NAME_BUFFER;
Посмотреть зарегистрированные имена можно используя утилиту nbtstat. Она входит в состав поставки Windows NT, вот пример результата её работы.
В Книге - "Сетевые средства Windows NT Server 4.0" издательства ВНV - Санкт Петербург. 1998 год. На странице 367 говорится вот что:
Для идентификации имен зарегистрированных на вашем локальном компьютере 1. Нажмите кнопку Start и выбирите опцию Run 2. В поле Open введите команду nbstat -n
Программы nbstat нет в поставке Windows NT, а есть программа nbtstat. Но вот в чем дело. nbtstat использует NetBIOS над TCP/IP - NBT. Если протокол TCP/IP не установлен, то вы получите сообщение -
Microsoft(R) Windows NT(TM) (C) Copyright 1985-1996 Microsoft Corp. D:\>nbtstat -n Failed to access NBT driver > :Unknown error number D:\>
И в приложении G написано, что утилита nbstat выдает информацию о именах NetBios.
Кроме того упоминание о nbstat в перемешку с nbtstat(!!!) можно найти в MSDN. Если кто знает в чем дело пишите !