Zum Inhalt wechseln


Foto

New-MailboxExportRequest Rückgabewert

Exchange

  • Bitte melde dich an um zu Antworten
Eine Antwort in diesem Thema

#1 blackperl

blackperl

    Newbie

  • 1 Beiträge

 

Geschrieben 11. Januar 2017 - 11:26

Hallo,

 

ich exportiere über die Powershell Exchange-Postfächer.

Dazu benutze ich folgenden Code (Auszug):

$em = New-MailboxExportRequest -Mailbox $Mailbox -FilePath $FilePath
	
While(($em.Status -ne "Completed") -and ($em.Status -ne "CompletedWithWarning") -and ($em.Status -ne "Failed")) {
   Write-host "em.Status: "$em.Status
   $ExportRequestState = Get-MailboxExportRequest | Where-Object {$_.Mailbox.ToString() -eq $id.Identity.ToString()} | select -ExpandProperty Status
   Write-host "ExportRequestState: "$ExportRequestState

   Start-Sleep -Seconds 1
}

Mein Problem bzw. meine Frage ist, warum sich die Variable $em nicht aktualisiert?

$em.Status ist immer "Queued", wohingegen $ExportRequestState irgendwann "in Progress" hat und abschließend "Completed".

 

Nach meinem Verständnis wird von New-MailboxExportRequest ein Objekt zurückgegeben. Die Eigenschaft "Status" sollte also aktuell sein.

 

Hat jemand eine Erklärung dafür?

Der Code wäre einfach übersichtlicher bzw. "schicker", wenn ich $em nutzen könnte statt immer wieder den Status erneut abfragen zu müssen.

 

Danke!

 

Gruß Tobias

 



#2 NilsK

NilsK

    Expert Member

  • 12.334 Beiträge

 

Geschrieben 11. Januar 2017 - 11:32

Moin,

 

$em aktualisiert sich nicht, weil es nur den Rückgabewert des Cmdlets New-MailboxExportRequest enthält. Das Cmdlet erzeugt einen neuen Request, mehr nicht. Also gibt es auch nur einen Rückgabewert.

 

Dass du den Status periodisch abfragen musst, liegt in der Natur der Sache. Stell dir eine große Umgebung vor, in der du zahlreiche Requests hast. Wenn Exchange von sich aus überall, wo jemand lauscht, den Status aktualisieren müsste, hätte es ganz schön zu tun.

 

Gruß, Nils


Nils Kaczenski

MVP Cloud and Datacenter Management
... der beste Schritt zur Problemlösung: Anforderungen definieren!

Kostenlosen Support gibt es nur im Forum, nicht privat!