RpcNsBindingExportPnPW 函数 (rpcnsi.h)

RpcNsBindingExportPnP 函数为支持即插即用的服务器建立一个名称服务数据库条目,其中包含多个绑定句柄和多个对象。

注意 Windows Vista 及更高版本的操作系统不支持此功能。
 

语法

RPC_STATUS RpcNsBindingExportPnPW(
  unsigned long EntryNameSyntax,
  RPC_WSTR      EntryName,
  RPC_IF_HANDLE IfSpec,
  UUID_VECTOR   *ObjectVector
);

参数

EntryNameSyntax

EntryName的语法。

若要使用注册表值项 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax中指定的语法,请提供一个RPC_C_NS_SYNTAX_DEFAULT值。

EntryName

指向将绑定句柄和对象 UUID 导出到的条目名称的指针。 不能提供 null 或空字符串。

若要使用注册表值项 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultEntry中指定的项名称,请提供空指针或空字符串。 在这种情况下,将忽略 EntryNameSyntax 参数,并且运行时库使用默认语法。

IfSpec

用于指定要导出的接口的存根生成的数据结构。 null 值表示没有要导出的绑定句柄(只导出对象 UUID),并且忽略 BindingVec

ObjectVector

指向服务器提供的对象 UUID 矢量的指针。 服务器应用程序构造此向量。 null 值表示没有要导出的对象 UUID(仅导出绑定句柄)。

返回值

价值 意义
RPC_S_OK
调用成功。
RPC_S_NOTHING_TO_EXPORT
没有可导出的。
RPC_S_INVALID_BINDING
绑定句柄无效。
RPC_S_WRONG_KIND_OF_BINDING
这是操作的错误绑定类型。
RPC_S_INVALID_NAME_SYNTAX
名称语法无效。
RPC_S_UNSUPPORTED_NAME_SYNTAX
不支持名称语法。
RPC_S_INCOMPLETE_NAME
名称不完整。
RPC_S_NO_NS_PRIVILEGE
名称服务操作没有特权。
RPC_S_NAME_SERVICE_UNAVAILABLE
名称服务不可用。
 
注释 有关有效错误代码的列表,请参阅 RPC 返回值
 

言论

RpcNsBindingExportPnP 函数允许服务器应用程序在名称服务数据库中公开提供接口,该接口支持任何客户端应用程序使用的即插即用绑定。

请注意,导出即插即用绑定时,服务器应用程序不应显式提供绑定向量。 当绑定由于即插即用事件而发生更改时,会自动更新绑定。

注意

rpcnsi.h 标头将 RpcNsBindingExportPnP 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [仅限桌面应用]
支持的最低服务器 Windows 2000 Server [仅限桌面应用]
目标平台 窗户
标头 rpcnsi.h (包括 Rpc.h)
Rpcns4.lib
DLL Rpcns4.dll

另请参阅

RpcNsBindingExport

RpcNsBindingUnexportPnP