NetServerEnum

【勇芳软件工作室】汉化HomePreviousNext

NetServerEnum功能列出了在指定域中可见的指定类型的所有服务器。例如,应用程序可以调用NetServerEnum列出所有域控制器或仅列出所有SQL服务器。

您可以组合位掩码列出几种类型。例如,0x00000003的值组合了SV_TYPE_WORKSTATION(0x00000001)和SV_TYPE_SERVER(0x00000002)的位掩码。

注意如果需要有关特定服务器的类型,名称和注释的更多信息,请使用WNetEnumResource功能。

安全要求

成功执行NetServerEnum不需要特殊的组成员资格。

NET_API_STATUS NetServerEnum(

LPTSTR【服务器名称】, 
DWORD【水平】, 
LPBYTE【* bufptrig】, 
DWORD【prefmaxlen】, 
LPDWORD【entriesread】, 
LPDWORD【为totalEntries】, 
DWORD【SERVERTYPE】, 
LPTSTR【域】, 
LPDWORD【resume_handle】 
); 

参数

【服务器名称】

指向包含要执行该函数的远程服务器名称的Unicode字符串。NULL指针或字符串指定本地计算机。

【水平】

指定以下值之一来返回提供的信息级别。

含义
100【bufptrig】参数指向SERVER_INFO_100结构的数组。
101【bufptrig】参数指向SERVER_INFO_101结构的数组。

【bufptrig】

指向存储有【水平】参数的数据的缓冲区的指针。

【prefmaxlen】

优选的最大长度,返回数据的8位字节。

【entriesread】

返回时,实际枚举的元素数位于【entriesread】指向的双字中。

【为totalEntries】

返回网络上可见服务器和工作站的总数。

【SERVERTYPE】

过滤服务器条目以从枚举返回的DWORD掩码。定义的掩码位指定:

符号常数含义
SV_TYPE_WORKSTATION0x00000001所有LAN Manager工作站
SV_TYPE_SERVER0x00000002所有LAN Manager服务器
SV_TYPE_SQLSERVER0x00000004任何运行Microsoft SQL Server的服务器
SV_TYPE_DOMAIN_CTRL0x00000008主域控制器
SV_TYPE_DOMAIN_BAKCTRL0x00000010备份域控制器
SV_TYPE_TIMESOURCE0x00000020服务器运行Timesource服务
SV_TYPE_AFP0x00000040Apple文件协议服务器
SV_TYPE_NOVELL0x00000080Novell服务器
SV_TYPE_DOMAIN_MEMBER0x00000100局域网经理2.【x】域成员
SV_TYPE_LOCAL_LIST_ONLY0x40000000服务器由浏览器维护。请参阅以下备注部分。
SV_TYPE_PRINT0x00000200服务器共享打印队列
SV_TYPE_DIALIN0x00000400服务器运行拨入服务
SV_TYPE_XENIX_SERVER0x00000800Xenix服务器
SV_TYPE_MFPN0x00004000Microsoft文件和打印为Netware
SV_TYPE_NT0x00001000Windows NT(工作站或服务器)
SV_TYPE_WFW0x00002000服务器运行Windows for Workgroups
SV_TYPE_SERVER_NT0x00008000Windows NT非DC服务器
SV_TYPE_POTENTIAL_BROWSER0x00010000可以运行浏览器服务的服务器
SV_TYPE_BACKUP_BROWSER0x00020000服务器运行浏览器服务作为备份
SV_TYPE_MASTER_BROWSER0x00040000运行主浏览器服务的服务器
SV_TYPE_DOMAIN_MASTER0x00080000服务器运行域主浏览器
SV_TYPE_DOMAIN_ENUM0x80000000主域名
SV_TYPE_WINDOWS0x00400000Windows 95或更高版本
SV_TYPE_ALL0xFFFFFFFF所有服务器

【域】

指向Unicode字符串的指针,其中包含要为其返回服务器列表的域名。如果指定为NULL,则隐含主域。

【resume_handle】

保留。必须设置为零。使用Wnet功能。

返回值

如果函数返回帐户信息,返回值为NERR_Success。

如果函数失败,则返回值为以下错误代码之一:

含义
ERROR_ACCESS_DENIED用户无权访问所请求的信息。
NERR_InvalidComputer计算机名无效。
ERROR_NO_BROWSER_SERVERS_FOUND没有找到浏览器服务器。
ERROR_MORE_DATA更多条目可用于后续呼叫。

备注

SV_TYPE_LOCAL_LIST_ONLY标志返回由浏览器内部维护的服务器列表。这仅在主浏览器(或以前是主浏览器的计算机上)上有意义。主浏览器是当前有权确定哪些机器可以是网络上的服务器或工作站的机器。

也可以看看

NetServerDiskEnum, NetQueryDisplayInformation, SERVER_INFO_100, SERVER_INFO_101