Результат Powershell.Invoke () равен 0. - PullRequest
0 голосов
/ 08 ноября 2018

Я попытался запустить следующую команду PowerShell в моем приложении Windows Form.Но мой результат всегда ноль.(result.Count == 0).Я попытался запустить команду в powershell ISE, она работает просто отлично.Кто-нибудь может помочь?

string connectionUri = "https://outlook.office365.com/powershell-liveid/";
var passWord = new SecureString();
foreach (char c in "jmfmjxvgtyspzrns".ToCharArray()) passWord.AppendChar(c);            
PSCredential credential = new PSCredential("myEmail@outlook.com", passWord);
Runspace runspace = RunspaceFactory.CreateRunspace();
PowerShell powershell = PowerShell.Create();

PSCommand command = new PSCommand();
command.AddCommand("New-PSSession");
command.AddParameter("ConfigurationName", "Microsoft.Exchange");
command.AddParameter("ConnectionUri", new Uri(connectionUri));
command.AddParameter("Credential", credential);
command.AddParameter("Authentication", "Basic");
powershell.Commands = command;
runspace.Open();
powershell.Runspace = runspace;
Collection<System.Management.Automation.PSObject> result = powershell.Invoke();

1 Ответ

0 голосов
/ 08 ноября 2018

Я понял это. Я добавил:

command.AddParameter("AllowRedirection");

Теперь работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...