Jump to content

tesso

Expert Member
  • Gesamte Inhalte

    3.925
  • Registriert seit

  • Letzter Besuch

Beiträge erstellt von tesso

  1. Hallo Leute,

     

    ich versuche vergeblich über EWS auf ein freigegebenes Postfach zuzugreifen. Ich bekomme immer nur die Mails aus meinem Postfach angezeigt.

    Bin mir nicht sicher ob ich mich nicht verrannt habe.

    Hier mein Code bisher:

    param($mailboxName = "tesso@lab.local",
    $smtpServerName = "ex1.lab.local",
    $SharedMailbox = "sharedmb@lab.local",
    $emailFrom = "monitorservice@contoso.com",
    $emailTo = "support@contoso.com"
    )
     
    # Load the EWS Managed API
    Add-Type -Path "C:\Program Files\Microsoft\Exchange\Web Services\2.2\Microsoft.Exchange.WebServices.dll"
     
    
    $Exchange2007SP1 = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2007_SP1
    $Exchange2010    = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2010
    $Exchange2010SP1 = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2010_SP1
    $Exchange2010SP2 = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2010_SP2
    $Exchange2013    = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2013
    $Exchange2013SP1 = [Microsoft.Exchange.WebServices.Data.ExchangeVersion]::Exchange2013_SP1
     
    # create EWS Service object for the target mailbox name
    $exchangeService = New-Object -TypeName Microsoft.Exchange.WebServices.Data.ExchangeService -ArgumentList $Exchange2010SP2
    $exchangeService.UseDefaultCredentials = $true
    #$exchangeService.AutodiscoverUrl($mailboxName)
    $exchangeService.AutodiscoverUrl($SharedMailbox)
    $exchangeService.ImpersonatedUserId = new-object Microsoft.Exchange.WebServices.Data.ImpersonatedUserId([Microsoft.Exchange.WebServices.Data.ConnectingIdType]::SmtpAddress, $SharedMailbox)
    
    # bind to the Inbox folder of the target mailbox
    $inboxFolderName = [Microsoft.Exchange.WebServices.Data.WellKnownFolderName]::Inbox
    $inboxFolder = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($exchangeService,$inboxFolderName)
    #$inboxFolder = [Microsoft.Exchange.WebServices.Data.Folder]::Bind($exchangeService,$inboxFolderName, $SharedMailbox)
    
    
    
    # Optional: reduce the query overhead by viewing the inbox 10 items at a time
    $itemView = New-Object -TypeName Microsoft.Exchange.WebServices.Data.ItemView -ArgumentList 10
    
    
      $foundItems = $exchangeService.FindItems($inboxFolder.Id,$itemView)
    
    
    foreach ($mailitem in $foundItems.Items) {
        $mailitem.Load()
       write-host  $mailitem.body.text 
    }
    
    
    
×
×
  • Neu erstellen...