Questo script:
# Controllo di appartenza di un utente ad un gruppo.
$UserName = Read-Host "Nome utente da controllare"
$GroupName = Read-Host "Inserire il gruppo di appartenenza dell'utente"
if ((@(([adsi] "WinNT://$([Environment]::MachineName)/$UserName,user").Groups() | ? { $_.GetType().InvokeMember("Name", "GetProperty", $null, $_, $null) -
like $GroupName })).Count -ne 0) {
Write-Host "L'utente '$UserName' appartiene al gruppo locale '$GroupName'."
}
else {
Write-Host "L'utente '$UserName' non appartiene al gruppo locale '$GroupName'."
}
funziona bene ma, quando inserisco un nome utente che non esiste nel gruppo locale inserito, ottengo il risultato corretto preceduto da questo errore:
Eccezione durante il recupero del membro "Groups": "Impossibile trovare il nome
utente.
"
In D:\Users\xxx\Documents\Test.ps1
:6 car:8
+ if ((@( <<<< ([adsi] "WinNT://$([Environment]::MachineName)/$UserName,user").
Groups() | ? { $_.GetType().InvokeMember("Name", "GetProperty", $null, $_, $nul
l) -like $GroupName })).Count -ne 0) {
+ CategoryInfo : NotSpecified: (:) [], ExtendedTypeSystemExceptio
n
+ FullyQualifiedErrorId : CatchFromBaseGetMember
Come faccio a togliere la visualizzazione di tale errore?
GRAZIE
CIAO