在同一PowerShell环境中的C#Cmdlet中执行PowerShell命令

在同一PowerShell环境中的C#Cmdlet中执行PowerShell命令,c#,powershell,cmdlets,C#,Powershell,Cmdlets,我已经用C#编写了一个PowerShell Cmdlet。在此Cmdlet中,我需要另一个PowerShell命令的输出。但是,无法从默认PowerShell窗口访问此PowerShell命令,需要导入其模块 假设此命令的名称为“New Token”,并且只能在组织在远程计算机上提供给我的特殊PowerShell窗口中访问。我的C#Cmdlet需要调用此命令并获取输出 我使用以下代码段来运行此命令 Runspace runSpace = RunspaceFactory.

我已经用C#编写了一个PowerShell Cmdlet。在此Cmdlet中,我需要另一个PowerShell命令的输出。但是,无法从默认PowerShell窗口访问此PowerShell命令,需要导入其模块

假设此命令的名称为“New Token”,并且只能在组织在远程计算机上提供给我的特殊PowerShell窗口中访问。我的C#Cmdlet需要调用此命令并获取输出

我使用以下代码段来运行此命令


            Runspace runSpace = RunspaceFactory.CreateRunspace();
            runSpace.Open();
            Pipeline pipeline = runSpace.CreatePipeline();
            Command cmd = new Command("New-Token");
            pipeline.Commands.Add(cmd);
            Collection<PSObject> output = pipeline.Invoke();
            WriteObject(output);

Runspace Runspace=RunspaceFactory.CreateRunspace();
Open();
Pipeline Pipeline=runSpace.CreatePipeline();
Command cmd=新命令(“新令牌”);
pipeline.Commands.Add(cmd);
集合输出=pipeline.Invoke();
写入对象(输出);
当我在导入新令牌的PowerShell窗口上运行它时,会出现以下错误:

术语“新令牌”无法识别为cmdlet、函数、脚本文件或脚本的名称 可操作程序。检查名称的拼写,或者如果包含路径,请验证路径是否正确,然后重试 再一次。

如何使C#cmdlet在调用它的同一个Powershell窗口中执行Powershell命令