尝试使用.Net PowerShell运行空间连接到本地Windows 10计算机时,为什么会出现异常?

问题描述

我正在尝试通过.Net使用 PowerShell 连接到我的本地计算机并在其中运行一些脚本。我正在使用Visual Studio 2019。 尝试打开 Runspace 时,我不断收到异常消息。

请考虑以下代码段:

private securestring ConvertTosecurestring(string password)
{
    var secure = new securestring();
    foreach (char c in password)
    {
        secure.AppendChar(c);
    }
    return secure;
}

private void foo()
{
    var credentials = new PSCredential("TestUser",ConvertTosecurestring("TestPWD"));
    var connectionInfo = new WSManConnectionInfo();
    var addr = "192.168.1.123"  // "localhost","."
    var connectionInfo = new WSManConnectionInfo(false,addr,5985,"/wsman","http://schemas.microsoft.com/powershell/Microsoft.PowerShell",credentials,15000);

    var testRunSpace = RunspaceFactory.CreateRunspace(connectionInfo);
    testRunSpace.open();
}

除了“ localhost”和“。”之外,我还尝试使用计算机的IPAddress。 我收到以下异常消息:

  • IPAddress ->“连接到远程服务器192.168.1.121失败,出现以下错误消息:WinRM客户端无法处理该请求...”
  • 本地主机”,“ ”->“ ...拒绝访问。有关更多信息,请参见about_Remote_Troubleshooting帮助主题。”

我已经签入PowerShell,并且WinRM服务正在本地计算机上运行。

在这里做什么错了。

要使其正常工作,是否需要在本地计算机上完成一些配置/设置?

谢谢JohnB

解决方法

好,所以我知道了。 我需要确保调用了“ Enable-PSRemoting ”,以确保启用了远程处理。 然后“ 本地主机”和“ ”都起作用。