getServiceRegistryStateKey 函数 (winsvc.h)

返回要读取和/或写入状态的服务的注册表项的句柄。

语法

DWORD GetServiceRegistryStateKey(
  SERVICE_STATUS_HANDLE       ServiceStatusHandle,
  SERVICE_REGISTRY_STATE_TYPE StateType,
  DWORD                       AccessMask,
  HKEY                        *ServiceStateKey
);

参数

ServiceStatusHandle

当前服务的状态信息结构的句柄。 此句柄由 RegisterServiceCtrlHandler 函数返回。

StateType

SERVICE_REGISTRY_STATE_TYPE的一个成员,指定服务注册表项将为其恢复的状态类型。

AccessMask

用于尝试打开状态密钥的访问掩码。 有关详细信息,请参阅 注册表项安全和访问权限

ServiceStateKey

接收输出注册表项句柄。

返回值

当所有操作成功完成时ERROR_SUCCESS;否则为 Win32 错误代码。

注解

对于 ServiceRegistryStatePersistent,目录的安全性设置为仅提供对本地系统帐户和服务 SID 的写入访问权限。 确保为调用此 API 的任何服务启用服务 SID。 有关详细信息,请参阅 SERVICE_SID_INFO

有关提供可与关联程序共享的服务状态的类似 API,请参阅 GetSharedServiceRegistryStateKey

卸载服务后,服务控制管理器会删除所有服务状态注册表项。

要求

要求
最低受支持的客户端 Windows 10版本 2004 (10.0;内部版本 19041)
最低受支持的服务器 Windows Server 版本 2004 (10.0;内部版本 19041)
标头 winsvc.h
Library Onecore.lib

另请参阅

RegisterServiceCtrlHandler

GetSharedServiceRegistryStateKey

SERVICE_SID_INFO