在一个项目中需要获取Win7系统中的当前活动用户与锁屏状态,网上有很多关于XP系统的相关资料,但关于Win7以上系统的资料很少,花了一些时间找到了相应的解决办法,现在整理并记录下来。
1.获取当前活动用户
实现思路:在Win7系统下,通过获取Session Id的方式获取活动用户,我们也可以通过任务管理器来查看获取的结果是否准确,标识等于1就是我们需要获取的Session Id:
实现过程:先通过WTSGetActiveConsoleSessionId获取到session Id,然后根据获取到的Id通过WTSQuerySessionInformation获取当前活动用户,保存在ppBuffer中:
头文件
#include <Wtsapi32.h>
#pragma comment(lib, "WtsApi32.lib")
实现代码: