1

我试图找出哪些计算机仍设置为通过代理服务器连接到 Internet。因此,我尝试读取 AD 中的值 ProxyServer 和 Proxy Enabled 值。在互联网上搜索后,我想出了这个:

$computername = Get-Content -path ".\pclist2.txt"

if (test-connection -computername $computername -quiet)
{
foreach ($pc in $computername)
    {
    $loggedon =@(Get-WmiObject -ComputerName $pc -Namespace root\cimv2 -Class Win32_ComputerSystem)[0].UserName; 

    #IEKeys
    $reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $pc.computer)
    $regkey = $reg.OpenSubkey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Internet Settings")
    $LMPS = $regkey.GetValue("ProxyServer")
    $LMPE = $regkey.GetValue("ProxyEnable")
    $reg2 = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('CurrentUser', $pc.computer)
    $regkey2 = $reg2.OpenSubkey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Internet Settings")
    $CUPS = $regkey2.GetValue("ProxyServer")
    $CUPE = $regkey2.GetValue("ProxyEnable")
    Add-Content ".\IEproxies.csv" "$pc;$LMPS;$LMPE;$CUPS;$CUPE"
    }
}

不幸的是,只有 CurentUser 的 ProxyEnable 变量被导出到文件中。其他值是空白的,我没有收到运行脚本的错误消息。有人可以帮我解决这个问题吗?

提前谢谢,

蒂埃里

4

0 回答 0