OpenProcessToken 函数 (processthreadsapi.h)
OpenProcessToken 函数打开与进程关联的访问令牌。
语法
BOOL OpenProcessToken(
[in] HANDLE ProcessHandle,
[in] DWORD DesiredAccess,
[out] PHANDLE TokenHandle
);
参数
[in] ProcessHandle
打开访问令牌的进程句柄。 进程必须具有PROCESS_QUERY_LIMITED_INFORMATION访问权限。 有关详细信息 ,请参阅进程安全性和访问权限 。
[in] DesiredAccess
指定 访问掩码,该掩码 指定访问令牌的请求访问类型。 这些请求的访问类型与令牌的 DACL) (自由访问控制列表 进行比较,以确定授予或拒绝了哪些访问。
有关访问令牌的访问权限列表,请参阅 Access-Token 对象的访问权限。
[out] TokenHandle
指向句柄的指针,该句柄标识函数返回时新打开的访问令牌。
返回值
如果该函数成功,则返回值为非零值。
如果函数失败,则返回值为零。 要获得更多的错误信息,请调用 GetLastError。
注解
若要从非提升进程内获取提升进程的句柄,必须从同一帐户启动这两个进程。
如果正在检查的进程是由其他帐户启动的,则检查过程需要启用SE_DEBUG_NAME特权。 有关详细信息 ,请参阅权限常量 (授权) 。
若要关闭通过 TokenHandle 参数返回的访问令牌句柄,请调用 CloseHandle。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2003 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | processthreadsapi.h (包括 Windows.h) |
Library | Advapi32.lib |
DLL | Advapi32.dll |