du26548
du26548
采纳率100%
2019-12-07 10:28

哪个winapi是获取用户登录时间的?

5

我知道GetTickCount是获取开机时间的,但我需要获取用户登录的时间。
因为我希望在开机后的自启动软件都运行加载完毕后,用户再点击我的程序才可以成功执行,不然有可能跟杀软冲突,所以想判断用户登陆时间后进行等待处理

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

3条回答

  • jiangsheng 蒋晟 2年前

    2000/XP下可以用WTSQuerySessionInformation WTSLogonTime,之后的可以用未公开函数WinStationQueryInformation
    如果不怕麻烦又要兼容未来的系统的话可以用WMI查询,用命令行的话是
    wmic netlogin get name, fullname, lastlogon
    WQL的话是
    Select name, fullname, lastlogon from Win32_NetworkLoginProfile

    点赞 2 评论 复制链接分享
  • caozhy 回答这么多问题就耍赖把我的积分一笔勾销了 2年前

    用命令行调用
    net user 用户名 | findstr /B /C:"Last logon"

    返回类似
    Last logon 2019/12/7 上午 09:21
    里面有时间

    点赞 1 评论 复制链接分享
  • wqsea wqsea 2年前

    系统日志里面有EventID 7001记录系统登录时间,在取得系统日志后获取登录时间。
    获取日志方式可参照 https://www.cnblogs.com/gossip/p/5249982.html

    点赞 评论 复制链接分享