Я очень новичок в PS, поэтому я думаю, что у меня что-то не хватает здесь. Я могу сделать удаленный сеанс PowerShell, как это ...Создать удаленную сессию powershell в C#?
$Session = New-PSSession -ConfigurationName Microsoft.Exchange
-ConnectionUri https://remote.com/Powershell
-Credential "Domain\Admin"
Я хочу эквивалент в C#, так что я пытаюсь это, но это не работает ...
WSManConnectionInfo connInfo = new WSManConnectionInfo(
new Uri("https://remote.com/Powershell"), /* uri */
"/wtf", /* shellUri??? */
cred); /* ps-credential */
using (Runspace runspace = RunspaceFactory.CreateRunspace(connInfo))
{
runspace.Open();
using (PowerShell ps = PowerShell.Create())
{
ps.Runspace = runspace;
}
}
Это терпит неудачу с ...
System.Management.Automation.Remoting.PSRemotingTransportException was unhandled
Message=Connecting to remote server failed with the following error message : The WS-Management service cannot process the request. The resource URI (/wsman) was not found in the WS-Management catalog....
Как я могу перевести это на C#? Что такое параметр «shellUri» и как передать имя конфигурации (Microsoft.Exchange в моем случае)?
О, я вижу, поэтому указание этого «shell uri» на C# эквивалентно установке ConfigurationName на Microsoft.Exchange в Powershell? – noctonura