使用Invoke-WmiMethod更改RDP

时间:2018-12-05 08:35:36

标签: powershell wmi rdp

我想用WMI方法更改RDP端口,但是我的代码不起作用,我也不知道为什么。

factorial(7)*8

在PowerShell中执行后,我得到了这一点:

__GENUS          : 2
__CLASS          : __PARAMETERS
__SUPERCLASS     :
__DYNASTY        : __PARAMETERS
__RELPATH        :
__PROPERTY_COUNT : 1
__DERIVATION     : {}
__SERVER         :
__NAMESPACE      :
__PATH           :
ReturnValue      : 5
PSComputerName   :

但是什么都没改变?

1 个答案:

答案 0 :(得分:1)

这里的权利表示您的问题:

ReturnValue      : 5

返回码5表示“访问被拒绝”。您的用户无权写入该注册表位置。您可能需要以“以管理员身份”运行代码。

话虽如此,PowerShell提供对注册表的直接访问。您不需要WMI。

$reg   = 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp'
$name  = 'PortNumber'
$value = 3354

New-ItemProperty -Path $reg -Name $name -Value $value -Type DWORD -Force | Out-Null

尽管如此,您仍然需要与对该注册表项具有写访问权的用户一起运行。