Powershell erreur lors de l'ajout d'un tableau

Salut, je suis en train de lancer un script pour obtenir les utilisateurs dans un réseau, dans un tableau, de sorte qu'il peut être délivrée à un fichier csv avec d'autres données que je vais l'avoir, comme les groupes de distribution.

Le code de script que je suis en cours d'exécution donne une erreur:

Invocation de méthode a échoué parce que [le Système.De la gestion.L'automatisation.PSObject] ne contient pas une méthode nommée "op_Addition'.

Le script est une simple boucle for:

$ActiveDirectoryList=@() 
$UserDetails = get-aduser -filter {enabled -eq $true} -properties * | Select DisplayName,EmailAddress, SAMAccountName
$counter = 0
foreach($User in $UserDetails){

    $ActiveDirectoryList = New-Object PSObject
    $Users = get-aduser $User.SAMAccountName -properties * 
    if(!$Users.EmailAddress -eq ""){
        $counter++
        $ActiveDirectoryList | Add-Member -MemberType NoteProperty -Name "DisplayName" -Value $Users.DisplayName
        $ActiveDirectoryList | Add-Member -MemberType NoteProperty -Name "Email Address" -Value $Users.EmailAddress 
        write-host $Users.DisplayName
        $ActiveDirectoryList+=$ActiveDirectoryList
    }
}

Essayé de chercher sur internet une solution, mais ils ne semblent pas résoudre quoi que ce soit.

  • $ActiveDirectoryList n'est pas un tableau, vous avez instancié en tant que PSObject
  • $ActiveDirectoryList+=$ActiveDirectoryList semble très suspect ...
  • Il est l'ajout d'un tableau dans le tableau, je pense/espère que c'est de toute façon. C'est là que $ActiveDirectoryList+=$ActiveDirectoryList vient en
  • Vous remplacer le tableau avec une PSObject lorsque vous ne $ActiveDirectoryList = New-Object PSObject, de sorte que l'opération d'ajout est effectivement PSObject + PSObject, pour qui il n'y a pas de surcharge pour le + opérateur
  • même si elle a travaillé comme vous le souhaitez, vous ajoutez un objet à lui-même. Sans doute parce que vous êtes à la ré-affectation de la variable.
InformationsquelleAutor Sam Lucas | 2016-03-21