为什么我不能 return 来自 c# 中 Powershell.Invoke() 方法的所有 cimsession 函数

Why can't i return all cimsession functions from Powershell.Invoke() method in c#

我正在 运行ning New-CimSession 来自 Powershell 和 C# 的命令。当我在Powershell上运行时,CimSession变量有很多功能,例如TestConnection()CreateInstance等。图片如下。

但是,PSObjectCimSession变量类型除了ToString()GetType()没有其他功能,当我运行New-CimSession 来自 Powershell.Invoke() c# 方法的命令。

我想从 C# 上的 PSObject 变量访问相同的方法。 你有什么想法吗?

  • 添加对 Microsoft.Management.Infrastructure Namespace 的引用
  • 添加`using Microsoft.Management.Infrastructure;
static void Main(string [] args)
{
     var csession = CimSession.Create("");
     csession.TestConnection();
}

csession 将可以访问您想要的不同方法

参考这里:

  • "C:\Program Files (x86)\Reference Assemblies\Microsoft\WMI\v1.0\Microsoft.Management.Infrastructure.dll"

  • C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.Management.Infrastructure