接下来将要进入Netbios的编程应用阶段。要想调用Netbios API函数,需要链接系统的NETAPI32.DLL文件。Delphi提供了一个NB30单元Netbios API函数及相关的结构、常量进行了定义。
首先来看看Netbios API包括哪些内容。实际Netbios API只有一个函数:
UCHAR Netbios(PNCB: pNCB);
函数中的惟一参数pNCB是一个指向某个网络控制块(TNCB)的指针。在那个NCB结构中,包含了为执行一个Netbios命令,相应的Netbios函数需要用到的全部信息。该结构的定义如下:
type
// Network Control Block
PNCB = ^TNCB;
TNCBPostProc = procedure(P: PNCB);
TNCB = packed record
ncb_command: Char; // command code
ncb_retcode: Char; // return code
ncb_lsn: Char; // local session number
ncb_num: Char; // number of our network name
ncb_buffer: PChar; // address of message buffer
ncb_length: Word; // size of message buffer
ncb_callname: array[0..NCBNAMSZ - 1] of char; // blank-padded name of remote
ncb_name: array[0..NCBNAMSZ - 1] of char