rmJoinSession 函数 (restartmanager.h)

将辅助安装程序加入现有的重启管理器会话。 必须使用只能从启动会话的主安装程序获取的会话密钥调用此函数。 需要使用有效的会话密钥才能使用任何重启管理器函数。 辅助安装程序加入会话后,可以调用 RmRegisterResources 函数来注册资源。

语法

DWORD RmJoinSession(
  [out] DWORD          *pSessionHandle,
  [in]  const WCHAR [] strSessionKey
);

参数

[out] pSessionHandle

指向现有重启管理器会话句柄的指针。

[in] strSessionKey

一个 以 null 结尾的字符串,其中包含现有会话的会话密钥。

返回值

这是收到的最新错误。 函数可以返回 Winerror.h 中定义的 系统错误代码 之一。

含义
ERROR_SUCCESS
0
函数已成功完成。
ERROR_SESSION_CREDENTIAL_CONFLICT
1219
无法验证会话密钥。
ERROR_SEM_TIMEOUT
121
重启管理器函数无法在分配的时间内获取注册表写入互斥体。 建议重启系统,因为进一步使用重启管理器可能会失败。
ERROR_BAD_ARGUMENTS
22
一个或多个参数无效。 如果在需要非 null 和非零值的参数中传递 NULL 指针或 0,则重启管理器函数将返回此错误值。
ERROR_WRITE_FAULT
29
操作无法读取或写入注册表。
ERROR_MAX_SESSIONS_REACHED
353
已达到最大会话数。
ERROR_OUTOFMEMORY
14
重启管理器操作无法完成,因为没有足够的内存可用。

注解

RmJoinSession 函数将辅助安装程序加入到现有的重启管理器会话。 这通常是不控制用户界面的安装程序,可以运行主安装程序的进程内或进程外。 只有主安装程序可以调用 RmStartSession 函数,这通常是控制用户界面或控制更新中多个修补程序的安装顺序的应用程序。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 restartmanager.h
Library Rstrtmgr.lib
DLL Rstrtmgr.dll

另请参阅

RmEndSession

RmStartSession