C# 如何识别当前正在使用VM的用户

C# 如何识别当前正在使用VM的用户,c#,.net,powershell,C#,.net,Powershell,如何识别当前正在使用VM的用户。也就是说,虚拟机可能有常见的登录名,如administrator、test1等,但我想知道哪个用户/机器使用mstsc从他们的机器上启动了虚拟机,并使用了它 我想使用C#或powershell代码获取这些信息 所有计算机和VM都在同一个域中 欢迎您提出所有建议。在PowerShell中,您可以执行以下操作: $sessions = gwmi -cn myvm -Query "Select * from Win32_LogonSession Where LogonT

如何识别当前正在使用VM的用户。也就是说,虚拟机可能有常见的登录名,如administrator、test1等,但我想知道哪个用户/机器使用mstsc从他们的机器上启动了虚拟机,并使用了它

我想使用C#或powershell代码获取这些信息

所有计算机和VM都在同一个域中


欢迎您提出所有建议。

在PowerShell中,您可以执行以下操作:

$sessions = gwmi -cn myvm -Query "Select * from Win32_LogonSession Where LogonType = 10"
$sessions | Foreach {gwmi -cn myvm -Query "Associators of {Win32_LogonSession.LogonID='$($_.LogonId)'} Where AssocClass=Win32_LoggedOnUser Role=Dependent"}

有了1294声誉,你现在应该知道你需要对你所问的问题表现出最低限度的理解。你试过什么代码了?你有没有试过用谷歌搜索:C#NET告诉谁在VMTry这个链接:@logixologist你没有我的问题。我知道如何获取VM中的用户。但在我的例子中,假设在我的VM中只创建了一个用户(管理员)。因此,您可以作为唯一的管理员登录。所以,无论ANSU建议什么,都将在VM中获取管理员。但是我想知道是哪台机器/用户启动了mstsc并通过普通管理员登录进入了VM?希望你拿到了
Assoc
Class
在不同的行中,我不知道应该是两个词还是一个词,如果我犯了错误,请修复它。应该是一个词。感谢您解决了单独的行问题。