(lmserver.h) SERVER_TRANSPORT_INFO_2 结构

SERVER_TRANSPORT_INFO_2 结构包含有关指定传输协议的信息,包括传输名称和地址。 此信息级别仅对 NetServerTransportAddEx 函数有效。

语法

typedef struct _SERVER_TRANSPORT_INFO_2 {
  DWORD  svti2_numberofvcs;
  LMSTR  svti2_transportname;
  LPBYTE svti2_transportaddress;
  DWORD  svti2_transportaddresslength;
  LMSTR  svti2_networkaddress;
  LMSTR  svti2_domain;
  ULONG  svti2_flags;
} SERVER_TRANSPORT_INFO_2, *PSERVER_TRANSPORT_INFO_2, *LPSERVER_TRANSPORT_INFO_2;

成员

svti2_numberofvcs

类型:DWORD

连接到使用 svti2_transportname 成员指定的传输协议的服务器的客户端数。

svti2_transportname

类型: LMSTR

指向包含传输设备名称的以 NULL 结尾的字符串的指针;例如,

\Device\NetBT_Tcpip_{2C9725F4-151A-11D3-AEEC-C3B211BD350B}

如果定义了 _WIN32_WINNTFORCE_UNICODE ,则此字符串为 Unicode。

svti2_transportaddress

类型: LPBYTE

指向变量的指针,该变量包含服务器在 svti2_transportname 成员指定的传输设备上使用的地址。

此成员通常是服务器正在使用的 NetBIOS 名称。 在这些情况下,名称长度必须为 16 个字符,最后一个字符必须是空字符 (0x20) 。

svti2_transportaddresslength

类型:DWORD

svti2_transportaddress成员的长度(以字节为单位)。 对于 NetBIOS 名称,此成员的值为 16 (十进制) 。

svti2_networkaddress

类型: LMSTR

指向以 NULL 结尾的字符串的指针,该字符串包含网络适配器正在使用的地址。 字符串特定于传输。

只能通过调用 NetServerTransportEnum 函数来检索此值。 不能通过调用 NetServerTransportAdd 函数或 NetServerTransportAddEx 函数来设置此值 )

如果定义了 _WIN32_WINNTFORCE_UNICODE ,则此字符串为 Unicode。

svti2_domain

类型: LMSTR

指向以 NULL 结尾的字符串的指针,该字符串包含服务器应宣布其存在的域的名称。 (调用 NetServerTransportEnum 时,此成员是服务器宣布其状态的域的名称。)

如果定义了 _WIN32_WINNTFORCE_UNICODE ,则此字符串为 Unicode。

svti2_flags

类型: ULONG

此成员可以是 Lmserver.h 头文件中定义的以下位值的组合。

含义
SVTI2_REMAP_PIPE_NAMES
如果为终结点设置了此值,则通过传输到达以打开命名管道的客户端请求将重新路由 () 重新映射到以下本地管道名称:

$$\ServerName\PipeName

有关此值的使用的详细信息,请参阅“备注”部分。

SVTI2_SCOPED_NAME
如果为终结点设置此值,并且尝试创建具有相同网络地址但传输名称不同的第二个传输,并且 SCOPED 标志的设置存在冲突,则此传输创建将失败。 因此,给定网络地址的每个已注册传输都必须具有相同的作用域设置。

有关此值的使用的详细信息,请参阅“备注”部分。

此值在 Windows Server 2008 和 Windows Vista SP1 上定义。

注解

netServerTransportAddEx 函数使用 SERVER_TRANSPORT_INFO_2 结构将指定的服务器绑定到传输协议。

下面是使用 SVTI2_REMAP_PIPE_NAMES 值的示例。 调用 NetServerTransportAddEx 函数以将传输添加到服务器,在svti2_transportaddress成员中指定“MyServer”的地址,并在svti2_flags成员中指定SVTI2_REMAP_PIPE_NAMES。 当客户端尝试在“\MyServer”上打开“管道”时,客户端实际上会打开 $$MyServer\Pipe。

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

通过调用 NetServerTransportAddEx 函数来创建作用域内终结点, 该函数的 level 参数设置为 2, bufptr 参数指向 在 svti2_flags 成员中设置了 SVTI2_SCOPED_NAME 位值的 SERVER_TRANSPORT_INFO_2 结构。 还可以通过调用 NetServerTransportAddEx 函数来创建作用域内终结点,该函数的 level 参数设置为 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_2SERVER_TRANSPORT_INFO_3 结构的 shi503_servername 成员中指定 SVTI2_SCOPED_NAME 标志。 NetShareDelEx 函数用于删除作用域内共享。 NetShareGetInfoNetShareSetInfo 函数用于获取和设置有关作用域共享的信息。

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

要求

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

另请参阅

NetServerComputerNameAdd

NetServerComputerNameDel

NetServerTransportAdd

NetServerTransportAddEx

NetServerTransportDel

NetServerTransportEnum

NetShareAdd

NetShareDelEx

NetShareGetInfo

NetShareSetInfo

网络管理概述

网络管理结构

SERVER_TRANSPORT_INFO_0

SERVER_TRANSPORT_INFO_1

SERVER_TRANSPORT_INFO_3

SHARE_INFO_503

服务器和工作站传输函数