SERVER_TRANSPORT_INFO_3结构 (lmserver.h)
SERVER_TRANSPORT_INFO_3结构包含有关指定传输协议的信息,包括名称、地址和密码 (凭据) 。 此信息级别仅对 NetServerTransportAddEx 函数有效。
语法
typedef struct _SERVER_TRANSPORT_INFO_3 {
DWORD svti3_numberofvcs;
LMSTR svti3_transportname;
LPBYTE svti3_transportaddress;
DWORD svti3_transportaddresslength;
LMSTR svti3_networkaddress;
LMSTR svti3_domain;
ULONG svti3_flags;
DWORD svti3_passwordlength;
BYTE svti3_password[256];
} SERVER_TRANSPORT_INFO_3, *PSERVER_TRANSPORT_INFO_3, *LPSERVER_TRANSPORT_INFO_3;
成员
svti3_numberofvcs
类型:DWORD
使用 svti3_transportname 成员指定的传输协议连接到服务器的客户端数。
svti3_transportname
类型: LMSTR
指向包含传输设备名称的以 NULL 结尾的字符串的指针;例如,
\Device\NetBT_Tcpip_{2C9725F4-151A-11D3-AEEC-C3B211BD350B}
如果定义了 _WIN32_WINNT 或 FORCE_UNICODE ,则此字符串为 Unicode。
svti3_transportaddress
类型: LPBYTE
指向变量的指针,该变量包含服务器在 svti3_transportname 成员指定的传输设备上使用的地址。
此成员通常是服务器正在使用的 NetBIOS 名称。 在这些情况下,名称的长度必须为 16 个字符,最后一个字符必须是空白字符 (0x20) 。
svti3_transportaddresslength
类型:DWORD
svti3_transportaddress 成员的长度(以字节为单位)。 对于 NetBIOS 名称,此成员的值为 16 (十进制) 。
svti3_networkaddress
类型: LMSTR
指向以 NULL 结尾的字符串的指针,该字符串包含网络适配器正在使用的地址。 字符串特定于传输。
只能通过调用 NetServerTransportEnum 函数来检索此值。 不能通过调用 NetServerTransportAdd 函数或 NetServerTransportAddEx 函数来设置此值 )
如果定义了 _WIN32_WINNT 或 FORCE_UNICODE ,则此字符串为 Unicode。
svti3_domain
类型: LMSTR
指向以 NULL 结尾的字符串的指针,该字符串包含服务器应向其声明其存在状态的域的名称。 (调用 NetServerTransportEnum 时,此成员是服务器要向其宣布其状态的域的名称。)
如果定义了 _WIN32_WINNT 或 FORCE_UNICODE ,则此字符串为 Unicode。
svti3_flags
类型: ULONG
此成员可以是 Lmserver.h 头文件中定义的以下位值的组合。
svti3_passwordlength
类型:DWORD
svti3_password 成员中的有效字节数。
svti3_password[256]
类型: BYTE[256]
用于新传输地址的凭据。 如果 svti3_passwordlength 成员为零,则使用服务器的凭据。
注解
netServerTransportAddEx 函数使用 SERVER_TRANSPORT_INFO_3 结构将指定的服务器绑定到传输协议。
下面是使用 SVTI2_REMAP_PIPE_NAMES 值的示例。 调用 NetServerTransportAddEx 函数将传输添加到服务器,在 svti3_transportaddress 成员中指定“MyServer”的地址,并在 svti3_flags 成员中 SVTI2_REMAP_PIPE_NAMES 。 当客户端尝试在“\MyServer”上打开“Pipe”时,客户端实际上会改为打开 $$MyServer\Pipe。
客户端和服务器执行相互身份验证需要 svti3_passwordlength 和 svti3_password 成员。
在 Windows Server 2008 和 SP1 的 Windows Vista 中,向 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 函数用于删除限定范围的共享。 NetShareGetInfo 和 NetShareSetInfo 函数用于获取和设置有关作用域共享的信息。
作用域终结点通常由群集命名空间使用。
要求
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
标头 | lmserver.h (包括 Lm.h) |