2017-01-05 30 views
1

J'essaie d'obtenir la valeur de msExchRecipientTypeDetails pour un utilisateur utilisant PowerShell et ADSI mais je reçois System.__ComObject.Attribut Exchange msExchRecipientTypeDetails

Je ne suis pas en mesure d'avancer pour obtenir la chaîne exacte. J'utilise ci-dessous commande PowerShell

$ADUsr = [ADSI]"LDAP://CN=User Name,OU=OrgUnit,DC=dc,DC=dc,DC=dc" 
$ADUsr.msExchRecipientTypeDetails 

et le résultat sont ci-dessous montrent

PS C:\Windows\system32> $ADUsr.msExchRecipientTypeDetails 
System.__ComObject 

Comment puis-je obtenir la valeur de chaîne exacte? Je m'attends à obtenir "2147483648" pour UserMailbox

Toute aide est appréciée!

Répondre

0

Je suis en mesure de voir la valeur de cette propriété si j'utilise un chercheur de répertoire pour récupérer l'objet utilisateur:

$Searcher = New-Object DirectoryServices.DirectorySearcher 
$Searcher.Filter = "(&(objectCategory=person)(sAMAccountName=testuser))" 
$Searcher.SearchRoot = 'LDAP://DC=test,DC=domain,DC=au' 
$Object = $Searcher.FindOne() 
$Object .Properties.msexchrecipienttypedetails 

Ou vous pouvez simplement utiliser l'applet de commande PowerShell:

Get-aduser testuser -Properties msExchRecipientTypeDetails 
+0

Merci Nick! Avec un peu de Mod, cela fonctionne comme je le voulais .. – TinkerAdmin

+0

Content de pouvoir vous aider, assurez-vous de marquer la question comme une réponse pour les autres. – Nick

0

Malheureusement , Je ne peux pas utiliser PS pour AD. Personnalisé cela pour travailler comme je le voulais. J'ai déjà l'utilisateur DN interrogé en haut du script pour un autre but

$UserDN = dsquery user forestroot -samid "USERNAME" 

Le reste à vérifier d'autres attributs

$Searcher = New-Object DirectoryServices.DirectorySearcher 
$LDAPPath = "LDAP://"+$UserDN 
$Searcher.SearchRoot = $LDAPPath 
$Object = $Searcher.FindOne() 
$DisUsr = $Object.Properties.useraccountcontrol | Select -First 1 
$SGMembership = $Object.Properties.memberof 
$RecipientTypeDetails = $Object.Properties.msexchrecipienttypedetails | Select -First 1 
$RemoteRecipientType = $Object.Properties.msexchremoterecipienttype | Select -First 1