对于台式机,我使用win32_computersystem wmi类,只读取"username",但在windows服务器上这是空白的。
此外,一个客户端上只能有一个活动会话,作为服务器,可以有多个人登录——假设这是我无法用同一个类获得它的部分原因。
如何获取服务器的当前登录用户?
尝试这个
$computer = 'MyServer1'
$owners = @{}
gwmi win32_process -computer $computer -Filter 'name = "explorer.exe"' | % {$owners[$_.handle] = $_.getowner().user}
get-process -computer $computer explorer | % {$owners[$_.id.tostring()]}
或者这个
https://gallery.technet.microsoft.com/scriptcenter/Get-LastLogon-Determining-283f98ae