RpcNsMgmtBindingUnexportA 函数 (rpcnsi.h)
RpcNsMgmtBindingUnexport 函数从名称服务数据库中的条目中删除多个绑定句柄和对象。
语法
RPC_STATUS RpcNsMgmtBindingUnexportA(
unsigned long EntryNameSyntax,
RPC_CSTR EntryName,
RPC_IF_ID *IfId,
unsigned long VersOption,
UUID_VECTOR *ObjectUuidVec
);
参数
EntryNameSyntax
EntryName 的语法。
若要使用注册表项 HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax中指定的语法,请提供值 RPC_C_NS_SYNTAX_DEFAULT。
EntryName
指向要从中删除绑定句柄和对象 UUID 的条目名称的指针。
IfId
指向接口标识的指针。 null 参数值指示绑定句柄不会未导出-只有对象 UUID 是未导出的。
VersOption
指定 RpcNsMgmtBindingUnexport 函数如何使用 IfId 参数指向的结构的 VersMajor 和 VersMinor 成员。
下表描述了 VersOption 参数的有效值。
ObjectUuidVec
指向服务器不再想要提供的对象 UUID 的向量的指针。 应用程序构造此向量。 null 值表示没有要取消导出的对象 UUID ,只有绑定句柄才能取消导出。
返回值
值 | 含义 |
---|---|
|
调用成功。 |
|
版本选项无效。 |
|
名称语法无效。 |
|
不支持名称语法。 |
|
名称不完整。 |
|
找不到名称服务条目。 |
|
名称服务不可用。 |
|
找不到接口。 |
|
并非所有对象都未导出。 |
注解
RpcNsMgmtBindingUnexport 函数允许管理应用程序从名称服务数据库条目中删除以下项之一:
- 指定接口 UUID 的所有绑定句柄,由接口版本号 (主要和次要)
- 资源的一个或多个对象 UUID
- 绑定句柄和资源的对象 UUID
如果找到指定接口的一个或多个绑定句柄且未导出且未出错, RpcNsMgmtBindingUnexport 将取消导出任何指定的对象 UUID。 如果未找到任何指定的对象 UUID,RpcNsMgmtBindingUnexport 将返回RPC_S_NOT_ALL_OBJS_UNEXPORTED。
除了调用 RpcNsMgmtBindingUnexport 外,管理应用程序还应调用 RpcMgmtEpUnregister 函数来注销已注册到终结点映射数据库的服务器。
注意
rpcnsi.h 标头将 RpcNsMgmtBindingUnexport 定义为别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将非特定编码别名的使用与非非特定编码的代码混合使用可能会导致不匹配,从而导致编译或运行时错误。 有关详细信息,请参阅 函数原型的约定。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | rpcnsi.h (包括 Rpc.h) |
Library | Rpcns4.lib |
DLL | Rpcns4.dll |