none
Powershell und das Outlook NewMail(Ex) Event RRS feed

  • Frage

  • Hallo,

    ich hab ein PS Script erstellt, welches zyklisch versch. Aktionen in Outlook durchführt. Leider ist das alles Timer gesteuert. Gibt es eine Möglichkeit, wenn Outlook (2010) geöffnet ist, per PS abzufragen, ob eine neue Mail eingegangen ist?

    Vielen Dank

    Dienstag, 20. August 2013 22:14

Antworten

  • Ich denke das folgende sollte dir weiterhelfen. Es wird einfach überprüft ob der Outlook Prozess läuft und falls ja, wird die letzte ungelesene Mail ausgegeben.

    $ol=New-Object -ComObject Outlook.Application
    $ns=$ol.GetNameSpace('MAPI')
    $inbox=$ns.GetDefaultFolder(6)
    
    while ((Get-Process).Name -contains "outlook") {
        
        Write-Host "Outlook is running."
        
        $InBox.items |
        Where-Object{
            $_.Unread
        } | 
        Sort-Object ReceivedTime -Descending |
        Select-Object Subject,ReceivedTime,SenderName -First 1
    
        Start-Sleep -Seconds 5
    }

    Montag, 22. August 2016 08:22