【问题标题】:Change RDP with Invoke-WmiMethod使用 Invoke-WmiMethod 更改 RDP
【发布时间】:2018-12-05 19:12:32
【问题描述】:

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

Invoke-WmiMethod -Class StdRegprov -Name SetDWORDvalue -ArgumentList 2147483650,"System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp", "PortNumber", 3354

我在 PowerShell 中执行后得到这个:

__属:2 __CLASS : __PARAMETERS __超类: __DYNASTY : __参数 __RELPATH : __PROPERTY_COUNT : 1 __派生:{} __服务器 : __命名空间: __小路 : 返回值:5 PS计算机名称:

但什么都没有改变?

【问题讨论】:

    标签: powershell wmi rdp


    【解决方案1】:

    这表明你的问题:

    返回值: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
    

    不过,您仍然需要使用对注册表项具有写入权限的用户来运行它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-21
      • 2020-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多