使用脚本中的密码自动连接到 UltraVNC 机器,但主机名(VNC 服务器)始终为空

使用脚本中的密码自动连接到 UltraVNC 机器,但主机名(VNC 服务器)始终为空

VNC 服务器字段 我正在使用带有列表框的 PowerShell 制作 GUI,并且该列表框中有主机名。当我选择它并点击连接时,它应该连接到该机器而无需输入密码。UltraVNC 确实启动并尝试连接,但 VNC 服务器字段始终为空,而通常它始终显示您要连接的机器的主机名。我从 listbox.SelectedItem 函数中提取主机名。我制作了一个测试标签来查看变量是否保存正确的值,结果确实如此。

当我删除该变量并使用实际主机名时,它也不起作用。它仍然是空的。以下是应该处理该问题的代码:

$vncForm_Load= {
    cd "C:\Program Files\uvnc bvba\UltraVNC"
    $PW = "password"
    ForEach ($VNCHost In Get-Content "A:\VNC Hosts.txt")
        {
            $hostsListbox.Items.Add($VNCHost)
        }
}

$connectButton_Click={
    #$testLabel.Text = $hostsListbox.SelectedItem
    $conHost = $hostsListbox.SelectedItem
    Start-Process -FilePath "C:\Program Files\uvnc bvba\UltraVNC\vncviewer.exe" -ArgumentList "-autoreconnect 30, -connect $conHost, -password $PW"

当我在 CMD 中使用以下命令时,它运行完美(我知道在变量或纯文本中传递密码并不安全,但这只是在本地):

vncviewer.exe -autoreconnect 30 -connect HOSTNAME::PORT -password password

我认为我只是对它进行了一些调整,使其可用于 PowerShell,但这并不奏效。我不知道我做错了什么……(我附上了一张我在脚本中使用 VNC 服务器字段时显示的图片)

相关内容