J'ai un petit script PowerShell, qui utilise Outlook interop pour déplacer certains messages de la boîte de réception vers d'autres dossiers. L'opération de déplacement de base est effectuée à l'aide du code ci-dessous:Outlook Items.Restrict Ne retourne pas tous les messages
[Reflection.Assembly]::LoadWithPartialname("Microsoft.Office.Interop.Outlook") | Out-Null
$olFolders = "Microsoft.Office.Interop.Outlook.OlDefaultFolders" -as [type]
$outlook = new-object -comobject outlook.application
$namespace = $outlook.GetNameSpace("MAPI")
$inbox = $namespace.getDefaultFolder($olFolders::olFolderInbox)
$filter = "[SenderName] = 'Dummy Sender'"
$messages = $inbox.items.Restrict($filter)
$messages | % {
Write-Host "`t$($_.Subject)"
[void]$_.Move($destination) | Out-Null
}
Le problème je remarque que items.Restrict
ne renvoie pas tous les messages correspondant. Chaque fois que je lance le script, je reçois entre 3 et 20 messages.
Quelqu'un at-il déjà observé ce comportement? Y at-il quelque chose d'évident que j'ai manqué?
Je l'ai fait avec varius SenderName et $ message.count correspondent au nombre sur perspectives (également avec 567 mail d'un expéditeur) –