“用户A”已登录
我的应用程序将Environment.Username识别为“User A”
现在在 Windows 中,我单击“切换用户”...
“用户B”登录
“用户 A”的进程仍在运行
“用户 A”运行的应用程序仍然显示环境。用户名是“用户 A”
我希望应用程序识别当前登录的用户(当前活动用户)是“用户 B”
我该怎么做呢?
不存在当前活动用户这样的东西,因为可以有多个(终端服务器)
您可以使用 GetSystemMetrics(SM_REMOTESESSION) 来检查这是否是“本地”会话,并使用 WTSGetActiveConsoleSessionId 来获取控制台会话的会话 id(您调用它时当前登录的用户)。您可以使用 WTSRegisterSessionNotification 在更改时收到通知。 ProcessIdToSessionId(GetCurrentProcess(),...) 将获取您的进程所在的会话 ID。最后,WTSQuerySessionInformation() 将获取有关特定会话的信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)