私はADとExchangeで多くのことを行うスクリプトを書いており、Exchangeの作業を開始する必要があるGUIの一部になりましたが、Exchangeモジュールを含めるために手動で指定できる場所がわかりません。私が精通している通常のプロセスはimport-module activedirectoryですが、import-module exchangeは機能しません。
Get-Module -ListAvailableを実行しました| [名前]を選択すると、Exchangeを示すものは何も表示されません。ただし、Exchange管理シェルISは、作業中のExchangeサーバーにロードされています。
Exchange 2010モジュールをスクリプトに含める方法を誰もが知っているので、Exchange固有のコマンドレットを内部で使用できますか? TIA ...
あなたはこれを行うことができます:
add-pssnapin Microsoft.Exchange.Management.PowerShell.E2010
そのほとんどが機能します(ただし、MSサポートは、RBACをバイパスするため、これを行うことはサポートされていないことを通知します)。
一部のコマンドレット(具体的にはUMmailboxの有効化/無効化)で、読み込まれたスナップインだけでは機能しない問題が見られました。
Exchange 2010では、基本的に、実際のEMSシェルの暗黙的なリモーティング環境以外でのPowershellの使用をサポートしていません。
これは古い質問であることはわかっていますが、明らかにサポートされていないスナップインを追加するのではなく、EMSショートカットプロパティを見て、これらのコマンドをコピーしました。
完全なショートカットターゲットは次のとおりです。
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -noexit -command ". 'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1'; Connect-ExchangeServer -auto"
そのため、スクリプトの冒頭に以下を追加しましたが、期待どおりに機能しているように見えました。
. 'C:\Program Files\Microsoft\Exchange Server\V14\bin\RemoteExchange.ps1'
Connect-ExchangeServer -auto
ノート:
import-module Microsoft.Exchange.Management.PowerShell.E2010aTry:
$exchangeser = "MTLServer01"
$session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionURI http://${exchangeserver}/powershell/ -Authentication kerberos
import-PSSession $session
または
add-pssnapin Microsoft.Exchange.Management.PowerShell.E2010