如何得知谁正在(本地或远程)登录Windows 7 PC?


14

我想从Windows 7 PC上查看谁“主动”登录到网络上的另一台Windows 7 PC,而不是最后连接的人。如何才能做到这一点?

一整天中,有几个人将远程登录到共享计算机,通常在他们通过时注销。请注意,这些用户在其PC和远程访问的PC上均具有Admin权限。如果我在其他人积极登录的情况下登录,则可以继续并让自己成为“活动”用户,从而使之前的活动帐户处于断开状态。在做出选择之前,能够查看谁正在主动登录将是一件很高兴的事情。

我在网上搜索并找到了各种解决方案,这些解决方案可让您知道谁建立了最后一个连接,但并没有转化为最后一个或当前“活动”的用户。

顺便说一句,在Windows 7中,当我单击“是”以登录后,在“之后”显示当前活动用户的ID似乎很奇怪。当我们使用Windows XP时,可以在决定继续登录之前“看到”当前活动用户的ID。

任何帮助表示赞赏。

Answers:


11

您可以为此使用终端服务查询命令。

query session /server:remote_computer_name_here

请注意,您将需要在远程计算机上设置以下注册表值:

Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server
Value Name: AllowRemoteRPC
Value: 1
Type: REG_DWORD

您可以将query命令放入批处理文件中,因此用户只需双击它即可查看谁登录了该计算机。


10

您可以使用Windows Sysinternals工具PSLoggedOn

用法: psloggedon [-] [-l] [-x] [\\计算机名| 用户名]

- 显示支持的选项和用于输出值的度量单位。

-l 仅显示本地登录,而不显示本地和网络资源登录。

- X 不显示登录时间。

\\计算机 指定计算机为其列表登录信息的名称。

用户名如果指定用户名,则PsLoggedOn会在网络中搜索该用户已登录的计算机。如果要确保要更改特定用户的用户配置文件配置时未登录该用户,此功能很有用。


值得注意的是,PSLoggedOn要求PSLoggedOn必须Remote Registry Service在目标计算机上运行。默认情况下不启动此服务。
我说莫妮卡(Monica)

3

Windows 7或更高版本的命令行中的另一个选项:

tasklist /s computername /fi "imagename eq explorer.exe" /v

如果查询远程计算机,可能会提示您输入管理员级别的凭据。

这将查看explorer.exe是否在计算机上运行,​​并且“ / v”提供用户名。如果未登录计算机,则将不会运行explorer.exe进程。如果有人登录,explorer.exe进程将在该用户的上下文中运行。


一种(很少)无法解决的情况是,如果远程计算机的外壳不是explorer.exe。稀有,但可能。
我说莫妮卡(Monica)

1

wmic在命令提示符命令可以获取这些信息。但是,为了使客户端响应,首先需要防火墙规则。

我在community.spiceworks.com上找到了一个帖子,这要感谢MacKingTosh似乎可以修复错误“错误-RPC服务器不可用”。

在产生此错误的客户端上运行的命令是:

netsh firewall set service remoteadmin enable

您可能要检查它是否符合防火墙策略。

使用时wmic,以下是您可以传入的参数的细分:

  • /node:-别名将针对的服务器
  • yourpcname -PC的名称
  • computersystem -这是我们正在尝试获取有关信息的计算机系统
  • get -我们想获取信息
  • username -登录的用户
  • model -计算机型号
  • manufacturer -制造计算机的公司名称
  • name -PC的名称

一些例子:

获取用户名:

wmic /node: 'yourpcname' computersystem get username

获取PC品牌和型号:

wmic /node: 'yourpcname' computersystem get manufacturer, model

获取所有三个:

wmic /node: 'yourpcname' computersystem get manufacturer, model, username

可以使用逗号和空格来添加额外的字段:

Model, manufacturer, username, name

上面的示例适用于远程PC,并且查询是通过网络进行的。如果该命令在本地运行,则其语法会稍有不同。例如:

wmic computersystem get manufacturer, model, username
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.