1 Pluspunkt 0 Minuspunkte
Wie kann ich Email in einem bestimmten Postfach anzeigen wenn ich mehrere Postfächer in Outlook eingetragen habe?
bezieht sich auf eine Antwort auf: Outlook Emails mit Powershell anzeigen
von  

2 Antworten

1 Pluspunkt 0 Minuspunkte

Wenn Sie mehrere Postfächer in Outlook haben und Sie auf diese mit PowerShell zugreifen möchten, müssen Sie die zusätzlichen Postfächer explizit hinzufügen.

# Starte Outlook
$Outlook = New-Object -ComObject Outlook.Application
$Namespace = $Outlook.GetNamespace("MAPI")

# Füge zusätzliche Postfächer hinzu
$Namespace.AddStore("name@domain.com") 

# Zugriff auf das Hauptpostfach
$Inbox = $Namespace.GetDefaultFolder(6) # 6 entspricht dem Ordner "Posteingang"

# Zugriff auf ein zusätzliches Postfach
$AdditionalInbox = $Namespace.GetSharedDefaultFolder("name@domain.com", 6) 

# Durchlaufe die E-Mails im zusätzlichen Postfach
foreach ($Email in $AdditionalInbox.Items) {
    Write-Host "Betreff: $($Email.Subject)"
    Write-Host "Absender: $($Email.SenderName)"
    Write-Host "Empfangsdatum: $($Email.ReceivedTime)"
    Write-Host "-----------------------------------"
}

# Beende Outlook
$Outlook.Quit()
von (732 Punkte)  
0 Pluspunkte 0 Minuspunkte

Dazu kannst du die COM Schnittstelle verwenden.

Add-Type -assembly "Microsoft.Office.Interop.Outlook"
$Outlook = New-Object -comobject Outlook.Application
$Namespace = $Outlook.GetNameSpace("MAPI")
$Inbox = $Namespace.GetDefaultFolder(6) # 6 = olFolderInbox

foreach($Mail in $Inbox.Items) {
    if ($Mail.Unread -eq $false) { continue }
    Write-Output "New mail '$($Mail.Subject)' from $($Mail.SenderName)."
}
von (776 Punkte)