Командлеты Exchange из c #

Мне нужно запустить командлеты обмена из консольного приложения C #.

Я следовал руководству из http://msdn.microsoft.com/en-us/library/bb332449.aspx для простой команды с одним параметром.

Мне нужно запустить следующие командлеты:

Get-MailboxStatistics -server evs | Select servername, StorageGroupName,databasename,@{expression={$_.TotalItemSize.value.ToKB()}},ItemCount,mailboxguid

Я не могу указать поле, которое мне нужно после команды select, и не знаю, как передать выражение @{expression={$_.TotalItemSize.value.ToKB()}} командлетам.

Есть ли способ сделать это в управляемом коде?


person user325823    schedule 26.04.2010    source источник
comment
Ооо, как бы я хотел, чтобы вы получили ответ на этот вопрос, кроме того, чтобы попробовать Redemption. Я работаю над тем же, и если получу ответ, я вернусь сюда.   -  person ChrisW    schedule 27.08.2010


Ответы (3)


Пробовали ли вы примеры в SDK командной консоли Exchange по адресу http://msdn.microsoft.com/en-us/library/ff326155(v=EXCHG.140).aspx?

person Chuck-at-MSFT    schedule 28.07.2011

Взгляните на библиотеку Redemption: http://www.dimastr.com/redemption/

Я не уверен, удовлетворяет ли он вашим конкретным требованиям, но он предоставляет большой объем информации через управляемый код.

person David Neale    schedule 26.04.2010

Вы можете использовать Import-PSSession для перемещения удаленного сеанса в локальное пространство выполнения PowerShell.

Вот 2 метода.

Powershell для Exchange 2013 - ошибка режима ограниченного языка http://blogs.msdn.com/b/akashb/archive/2010/03/26/how-to-call-ps1-script-from-managed-code-using-remote-powershell-exchange-2010.aspx

person Stuart    schedule 16.09.2014