在 c++ 中获取 Windows 会话的用户名
我试图更好地理解 Windows 会话(TS 会话和登录会话)是如何工作的(当前在 XP 中),所以也许我的整个问题或我想要做的事情是不可能的。
我正在运行一个 Windows 服务(在 XP 中),该服务在会话 0 中运行,并且我尝试使用 WTSQueryUserToken()
获取附加到此会话的用户名。 现在,会话 0 中有多个用户名:SYSTEM
、theuser
(登录用户)、NETWORK SERVICE
、LOCAL SERVICE.
当我使用 WTSQueryUserToken() 时,我得到“theuser”(这是活动会话),但我试图获取我的服务的用户名(这是 SYSTEM)。 这可能吗,还是我完全搞错了?
I am trying to understand better how Windows sessions (TS sessions and log on sessions) works (currently in XP), so maybe my whole question or what I am trying to do is impossible.
I am running a Windows service (in XP), which runs in session 0, and I am trying to get the username attached to this session using WTSQueryUserToken()
.
Now, in session 0 there are several usernames: SYSTEM
, theuser
(logged on user),NETWORK SERVICE
, LOCAL SERVICE
.
When I use WTSQueryUserToken()
I get "theuser" (which is the Active session), but I am trying to get the username of my service (which is SYSTEM).
Is that possible or did I simply get it all wrong?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我使用以下代码来获取我的进程的用户令牌,
我不知道它是否也适用于服务,我认为它应该。
I use the following code to get user token for my process
I have no idea if it works for services as well, I think it should.