Powershell 使用Invoke WmiMethod更改RDP

Powershell 使用Invoke WmiMethod更改RDP,powershell,wmi,rdp,Powershell,Wmi,Rdp,我想用WMI方法更改RDP端口,但我的代码不起作用,我不知道为什么 Invoke-WmiMethod -Class StdRegprov -Name SetDWORDvalue -ArgumentList 2147483650,"System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp", "PortNumber", 3354 我在PowerShell中执行后得到以下结果: __GENUS : 2

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

Invoke-WmiMethod -Class StdRegprov -Name SetDWORDvalue -ArgumentList 2147483650,"System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp", "PortNumber", 3354
我在PowerShell中执行后得到以下结果:

__GENUS : 2 __CLASS : __PARAMETERS __SUPERCLASS : __DYNASTY : __PARAMETERS __RELPATH : __PROPERTY_COUNT : 1 __DERIVATION : {} __SERVER : __NAMESPACE : __PATH : ReturnValue : 5 PSComputerName : __属:2 __类:\ u参数 __超类: __王朝:_参数 __重新路径: __物业单位数目:1 __派生:{} __服务器: __名称空间: __路径: 返回值:5 PSComputerName:
但什么都没有改变?

这里的这一点表明了您的问题:

ReturnValue : 5 不过,您仍然需要与对注册表项具有写访问权限的用户一起运行此操作

$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