La funzione Ottiene-DatabaseStatus
{
Param (
[Stringa []] $Server
)
$Server | ForEach-Oggetto {
# esposizione alcuni indicatori di progresso
Scrivere-Ospite “che inizia ciclo per $_„
Scrivere-Ospite “che esegue domanda di WMI„
$wmiServer = Ottengono-Wmiobject Exchange_Server - `del _ di $ del calcolatore
- #-ErrorAction radice \ MicrosoftExchangeV2 SilentlyContinue del namespace
L'Scrivere-Ospite “che genera CDOEXM obietta„
$cdoexmIExchangeServer = Nuovo-Oggetto - COM CDOEXM.ExchangeServer
$cdoexmIStorageGroup = Nuovo-Oggetto - COM CDOEXM.StorageGroup
$cdoexmIMailboxStoreDB = Nuovo-Oggetto - COM CDOEXM.MailboxStoreDB
Scrivere-Ospite “fonte di dati dell'assistente di scambio di apertura„
$cdoexmIExchangeServer.Datasource.Open ($_)
Scrivere-Ospite “che controlla StorageGroups„
$cdoexmIExchangeServer.StorageGroups |
Dove-Oggetto {Ne 0 di $_.IndexOf (“gruppo di immagazzinaggio di CN=Recovery„) -} |
ForEach-Oggetto {
Scrivere-Ospite “gruppo $_ di immagazzinaggio di apertura„
$cdoexmIStorageGroup.DataSource.Open ((“LDAP: /„ + $_))
$cdoexmIStorageGroup.MailboxStoreDBs | ForEach-Oggetto {
Scrivere-Ospite “deposito $MailStore di apertura„
$cdoexmIMailboxStoreDB.DataSource.Open ((“LDAP: /„ + $_))
$cdoexmIMailboxStoreDB | Nome dell'Selezionare-Oggetto,
@ {e= del n='Status'; {se ($_.Status - eq 0) {“montato„} altrimenti {“smontato„}}}
}
}
}
}
}
Ottenere-DatabaseStatus “server1„, “server2„ | ConvertTo-HTML
|