Exchange Mailbox Report
Hallo Admins,
ich habe ein Script, das mir die Mailboxgrößen all User einer bestimmten OU ausgibt.
Zum Vergleich verwende ich den DisplayName bzw. MailboxDisplayName. Da in einer größeren Struktur Namen doppelt vorkommen können, ist es nicht sehr eindeutig.
Ich möchte am liebsten CN verwenden. Wie müsste ich das Script umbauen?
Script----
Dim SWBemlocator
Dim objWMIService
Dim colItems
Dim objFSO
Dim objFile
Dim strOU
strComputer = "Mailserver3" 'Computername (Mailserver)
UserName = ""
Password = ""
strLog="\\filesserver\c$\REPORT\MailboxReport.txt" 'Dateipfad und Name
'Reportdatei anlegen
Set objFSO=CreateObject("Scripting.FileSystemObject")
Set objFile=objFSO.CreateTextFile(strLog,True)
objFile.WriteLine "Storename; MailboxDisplayName;CN; Size(KB);"
Call SubReport("Berlin")
'Reportdatei schließen
objFile.close
Sub SubReport (strOU)
Set objOU = GetObject ("LDAP://OU=" & strOU & ",OU=GMD,OU=Domain Users,DC=test,DC=de")
Set SWBemlocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIServiceExchange = SWBemlocator.ConnectServer(strComputer,"\root\MicrosoftExchangeV2",UserName,Password)
strQuery="Select * from Exchange_Mailbox"
For Each objUser in objOU
Set colItemsExchange = objWMIServiceExchange.ExecQuery(strQuery,,48)
For Each objItemExchange in colItemsExchange
If objUser.DisplayName = objItemExchange.MailboxDisplayName Then
If objUser.AccountDisabled = false Then
objFile.writeline objItemExchange.StoreName & ";" & objItemExchange.MailboxDisplayName & ";" _
& objUser.CN & ";" & objItemExchange.Size
End If
End If
Next
NEXT
End Sub
--- Ende ----
Wie müsste die Prüfung "If objUser.DisplayName = objItemExchange.MailboxDisplayName Then" geändert werden??
Oder habt ihr einen besseren Vorschlag?
Vielen Dank!
ich habe ein Script, das mir die Mailboxgrößen all User einer bestimmten OU ausgibt.
Zum Vergleich verwende ich den DisplayName bzw. MailboxDisplayName. Da in einer größeren Struktur Namen doppelt vorkommen können, ist es nicht sehr eindeutig.
Ich möchte am liebsten CN verwenden. Wie müsste ich das Script umbauen?
Script----
Dim SWBemlocator
Dim objWMIService
Dim colItems
Dim objFSO
Dim objFile
Dim strOU
strComputer = "Mailserver3" 'Computername (Mailserver)
UserName = ""
Password = ""
strLog="\\filesserver\c$\REPORT\MailboxReport.txt" 'Dateipfad und Name
'Reportdatei anlegen
Set objFSO=CreateObject("Scripting.FileSystemObject")
Set objFile=objFSO.CreateTextFile(strLog,True)
objFile.WriteLine "Storename; MailboxDisplayName;CN; Size(KB);"
Call SubReport("Berlin")
'Reportdatei schließen
objFile.close
Sub SubReport (strOU)
Set objOU = GetObject ("LDAP://OU=" & strOU & ",OU=GMD,OU=Domain Users,DC=test,DC=de")
Set SWBemlocator = CreateObject("WbemScripting.SWbemLocator")
Set objWMIServiceExchange = SWBemlocator.ConnectServer(strComputer,"\root\MicrosoftExchangeV2",UserName,Password)
strQuery="Select * from Exchange_Mailbox"
For Each objUser in objOU
Set colItemsExchange = objWMIServiceExchange.ExecQuery(strQuery,,48)
For Each objItemExchange in colItemsExchange
If objUser.DisplayName = objItemExchange.MailboxDisplayName Then
If objUser.AccountDisabled = false Then
objFile.writeline objItemExchange.StoreName & ";" & objItemExchange.MailboxDisplayName & ";" _
& objUser.CN & ";" & objItemExchange.Size
End If
End If
Next
NEXT
End Sub
--- Ende ----
Wie müsste die Prüfung "If objUser.DisplayName = objItemExchange.MailboxDisplayName Then" geändert werden??
Oder habt ihr einen besseren Vorschlag?
Vielen Dank!
Please also mark the comments that contributed to the solution of the article
Content-Key: 93232
Url: https://administrator.de/contentid/93232
Printed on: April 24, 2024 at 05:04 o'clock