在Windows 7中使用Powershell运行脚本时遇到问题。
该脚本仅检索终端服务器中所有已连接用户的列表,以便通过“ mstsc.exe”连接到他们。问题是,当我运行cmdlet "Get-RDUsersession"
时,它返回它不能识别为cmdlet
的名称。
我已经知道这可能是一个错误,因为在运行此cmdlet
之前,我必须为Windows安装RSAT管理工具,以使所有模块都专用于“ remotedesktop”和“ active directory” 。
事实上,我已经完成了Windows 7和Windows 10的安装,但是在Windows 10中它可以正常工作,而在Windows 7中出现了该错误。
此外,我看到在路径C:\Windows\system32\WindowPowerShell\v1.0\Modules
中没有远程桌面模块,而在Windows 10中。
正常吗?如何在Windows 7中运行该cmdlet
?
答案 0 :(得分:0)
多年来,我的环境中一直没有Win7,因此,我无法直接进行检查。但是,如果您说您下载并安装了Win7版本的RSAT(WinOS Clinet版本的安装程序不同),并且RSAT不在任何模块路径中,则有多个模块路径,那么RSAT出了点问题安装。
此外,值得注意的是,即使您安装了最新版本,PowerShell cmdlet的可用性在WinClient版本上也有所不同。某些cmdlet仅适用于为其设计的操作系统版本。
如果其他所有方法均失败,则可以对新计算机使用“隐式PS远程处理”,并代理该计算机上的cmdlet并使用它们。在隐式会话中,这些cmdlet实际上是在远程主机上运行的,而不是您使用它们的本地工作站。
那么,如果您在WIn7和Win10系统上执行以下操作,结果是什么?
Get-Command -Name Get-RDUsersession
CommandType Name Version Source
----------- ---- ------- ------
Function Get-RDUserSession 2.0.0.0 RemoteDesktop
Get-Module -Name RemoteDesktop
ModuleType Version Name ExportedCommands
---------- ------- ---- ----------------
Manifest 2.0.0.0 RemoteDesktop {Add-RDServer, Add-RDSessionHost,...
Import-Module -Name RemoteDesktop -Verbose