我想用VBS来获得在用户的用户名登录。
我尝试了一些代码,当我直接运行该脚本(双击它),它的工作原理
Set wshNetwork = CreateObject("WScript.Network")
strUser = wshNetwork.Username
WScript.Echo "Current User: " & strUser
不过,我需要做的就是用CMD运行使用AT命令计划任务。 当它运行时,用户名应该不是登录的用户的计算机的名称。
当我运行CMD作为管理员,并使用WScript的运行脚本也会发生此问题。
有什么办法来绕过这一背景下,并获得用户,而不是运行该脚本的一个记录?
命令
query session console
应该提供你所需要的
为了更方便您解析
quser console
编辑 - 包含的样本代码的VBS
Dim strCmd
strCmd = "cmd /q /c ""quser console | find /i ""console"" "" "
Dim buffer
buffer = WScript.CreateObject("WScript.Shell").Exec(strCmd).StdOut.ReadAll()
Dim c, consoleUserName
c = InStr(buffer,"console")
If c > 2 Then
consoleUserName = Trim(Mid(buffer,2,c-2))
Else
consoleUserName = ""
End If
WScript.Echo consoleUserName
我建议你执行的命令
组
从提示。 这可能表明,在可能感兴趣的环境中设置的几个项目。
设置用户
将审查的名单,以便只有启动变量user
将被显示。