NetServerTransportAddEx 函数 (lmserver.h)

NetServerTransportAddEx 函数将指定的服务器绑定到传输协议。 此扩展函数允许调用应用程序指定 SERVER_TRANSPORT_INFO_0SERVER_TRANSPORT_INFO_1SERVER_TRANSPORT_INFO_2SERVER_TRANSPORT_INFO_3 信息级别。

语法

NET_API_STATUS NET_API_FUNCTION NetServerTransportAddEx(
  [in] LMSTR  servername,
  [in] DWORD  level,
  [in] LPBYTE bufptr
);

parameters

[in] servername

指向字符串的指针,该字符串指定要在其中执行函数的远程服务器的名称。 如果此参数为 NULL,则使用本地计算机。

[in] level

指定一个值,该值指示数据的信息级别。 此参数的取值可为下列值之一:

含义
0
指定有关传输协议的信息,包括网络上的名称、地址和位置。 bufptr 参数指向SERVER_TRANSPORT_INFO_0结构。
1
指定有关传输协议的信息,包括名称、地址、网络位置和域。 bufptr 参数指向SERVER_TRANSPORT_INFO_1结构。
2
指定与级别 1 相同的信息,并添加 svti2_flags 成员。 bufptr 参数指向SERVER_TRANSPORT_INFO_2结构。
3
指定与级别 2 相同的信息,并添加凭据信息。 bufptr 参数指向SERVER_TRANSPORT_INFO_3结构。

[in] bufptr

指向包含数据的缓冲区的指针。 此数据的格式取决于 级别 参数的值。

有关详细信息,请参阅 网络管理功能缓冲区

返回值

如果函数成功,则返回值NERR_Success。

如果函数失败,则返回值可能是以下错误代码之一。

返回代码 说明
ERROR_ACCESS_DENIED
用户无权访问请求的信息。
ERROR_DUP_NAME
网络上存在重复的名称。
ERROR_INVALID_DOMAINNAME
在网络上找不到域名。
ERROR_INVALID_LEVEL
级别 参数指定的值无效。
ERROR_INVALID_PARAMETER
参数无效。

如果 bufptr 参数指向的 SERVER_TRANSPORT_INFO_0SERVER_TRANSPORT_INFO_1SERVER_TRANSPORT_INFO_2SERVER_TRANSPORT_INFO_3 结构中的传输名称或传输地址成员为 NULL,则返回此错误。 如果 bufptr 参数指向的 SERVER_TRANSPORT_INFO_0SERVER_TRANSPORT_INFO_1SERVER_TRANSPORT_INFO_2SERVER_TRANSPORT_INFO_3 结构中的传输地址长度成员为零或大于 Windef.h 头文件) 中定义的MAX_PATH (,也会返回此错误。 如果SERVER_TRANSPORT_INFO_2的标志成员或 bufptr 参数指向的SERVER_TRANSPORT_INFO_3结构包含非法值,也会返回此错误。

对于其他无效参数,也会返回此错误。

ERROR_NOT_ENOUGH_MEMORY
可用内存不足。

注解

只有管理员或服务器操作员本地组的成员才能成功执行 NetServerTransportAddEx 函数。

如果使用对 NetServerTransportAddEx 函数的调用将传输协议添加到服务器,则连接在服务器重新启动或重启后不会保留。

NetServerComputerNameAdd 函数是一个实用工具函数。 它结合了 NetServerTransportEnum 函数和 NetServerTransportAddEx 函数的功能,使你可以指定模拟的服务器名称。

在具有 Service Pack 1 的 Windows Server 2008 和 Windows Vista (SP1) 上,向 Windows 远程文件服务器注册的每个名称 (SRV) 都指定为作用域名称或非作用域名称。 然后,添加到系统的每个共享将附加到所有非作用域名称,或附加到单个作用域名称。 希望使用范围功能的应用程序负责将新名称注册为限定范围的终结点,然后创建具有适当范围的共享。 这样,网络管理和网络共享管理功能的旧版使用不会受到任何影响,因为它们继续将共享和名称注册为非作用域名称。

通过调用 NetServerTransportAddEx 函数(级别参数设置为 2),bufptr 参数指向在 svti2_flags成员中设置SVTI2_SCOPED_NAME位值的SERVER_TRANSPORT_INFO_2结构来创建作用域终结点。 还可以通过调用 NetServerTransportAddEx 函数(级别参数设置为 3)和 bufptr 参数指向SERVER_TRANSPORT_INFO_3结构(在 svti3_flags成员中设置SVTI2_SCOPED_NAME位值)来创建作用域终结点。

为传输设置SVTI2_SCOPED_NAME位值时,可以使用 NetShareAdd 函数 (SHARE_INFO_503结构的shi503_servername成员) 相应的服务器名称添加共享。 如果没有使用 SVTI2_SCOPED_NAME 位值和 shi503_servername 成员中提供的名称注册传输,则以限定范围的方式添加共享将不会成功。

NetShareAdd 函数用于在 servername 参数中指定的远程服务器上添加作用域共享。 在 bufptr 参数中传递的 SHARE_INFO_503shi503_servername 成员中指定的远程服务器必须已绑定到使用 NetServerTransportAddEx 函数作为作用域终结点的传输协议。 必须在传输协议的SERVER_TRANSPORT_INFO_2或SERVER_TRANSPORT_INFO_3结构的shi503_servername成员中指定SVTI2_SCOPED_NAME标志。 NetShareDelEx 函数用于删除限定范围的共享。 NetShareGetInfoNetShareSetInfo 函数用于获取和设置有关作用域共享的信息。

作用域终结点通常由群集命名空间使用。

要求

   
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 lmserver.h (包括 Lm.h)
Library Netapi32.lib
DLL Netapi32.dll

另请参阅

NetServerComputerNameAdd

NetServerComputerNameDel

NetServerTransportAdd

NetServerTransportDel

NetServerTransportEnum

NetShareAdd

NetShareDelEx

NetShareGetInfo

NetShareSetInfo

网络管理功能

网络管理概述

SERVER_TRANSPORT_INFO_0

SERVER_TRANSPORT_INFO_1

SERVER_TRANSPORT_INFO_2

SERVER_TRANSPORT_INFO_3

SHARE_INFO_503

服务器和工作站传输函数