Aqui está uma pequena função do PowerShell para verificar isso.
function Test-LocalAccountDisabled
{
param (
[string]
$AccountName = 'Guest',
[string[]]
$ComputerName = $env:COMPUTERNAME
)
$AccountDisable=0x0002
foreach ($Computer in $ComputerName)
{
[ADSI]$Guest="WinNT://$Computer/$AccountName,User"
if ($Guest -ne $null)
{
New-Object PSObject -Property @{
Disabled = ($Guest.UserFlags.Value -band $AccountDisable) -as [boolean]
AccountName = $AccountName
ComputerName = $Computer
}
}
else
{
Write-Error "Unable to find $AccountName on $Computer."
}
}
}
Se você tiver uma lista de computadores em um arquivo de texto separados por quebras de linha, poderá fazer algo como
Test-LocalAccountDisabled -ComputerName (get-content computers.txt)